Archived
1

Added Evaluation Context and Math Rules

This commit is contained in:
Kim Wittenburg
2014-09-15 15:58:35 +02:00
parent 6573cd1b5c
commit 3cf2006af7
6 changed files with 191 additions and 41 deletions

28
MathPad/MPMathRules.h Normal file
View File

@@ -0,0 +1,28 @@
//
// MPMathRules.h
// MathPad
//
// Created by Kim Wittenburg on 14.09.14.
// Copyright (c) 2014 Kim Wittenburg. All rights reserved.
//
#import <Foundation/Foundation.h>
FOUNDATION_EXPORT NSString *MPMathRulesAllowsImplicitMultiplicationKey;
FOUNDATION_EXPORT NSString *MPMathRulesMaximumOperatorChainLengthKey;
FOUNDATION_EXPORT NSString *MPMathRulesMaximumOperatorChainLengthInMultiplicationKey;
FOUNDATION_EXPORT NSString *MPMathRulesMaximumOperatorChainLengthInFunctionKey;
@interface MPMathRules : NSObject
+ (MPMathRules *)sharedRules;
@property (nonatomic, getter = isUsingUserDefaultValues) BOOL usingUserDefaultValues;
@property (nonatomic) BOOL allowsImplicitMultiplication; // wether 2 3 is equal to 6 or error
// Default value uses the key "..." in NSUserDefaults or ... if the key does not exist.
@property (nonatomic) NSUInteger maximumOperatorChainLength; // +--++-5 -> Chain length: 6, 2 default (sign of number and operator) (0 is invalid?)
@property (nonatomic) NSUInteger maximumOperatorChainLengthInMultiplication; // Default: 1, 0 means actually 0
@property (nonatomic) NSUInteger maximumOperatorChainLengthInFunction; // For sin, cos, tan. Default: 1
@end