Archived
1

Improved Evaluation

This commit is contained in:
Kim Wittenburg
2014-09-28 23:50:18 +02:00
parent 43b6f78afb
commit d67a1949e9
19 changed files with 841 additions and 89 deletions

View File

@@ -8,7 +8,8 @@
#import <Foundation/Foundation.h>
#import "MPExpression.h"
#import "MPElementParser.h"
#import "MPExpressionTokenizer.h"
#import "MPTerm.h"
@class MPExpressionEvaluator, MPExpression, MPParsedElementOld;
@@ -18,10 +19,14 @@
- (instancetype)initWithExpression:(MPExpression *)expression;
@property (readonly, nonatomic, weak) MPExpression *expression;
#pragma mark Evaluating Expressions
@property (readonly, nonatomic, strong) NSString *definedVariable;
@property (nonatomic, strong) MPExpressionTokenizer *lexer;
- (NSDecimalNumber *)evaluateWithError:(MPParseError *__autoreleasing *)error;
- (NSDecimalNumber *)evaluateVariableDefinition:(BOOL)flag error:(MPParseError *__autoreleasing *)error;
- (void)expressionDidChangeInRange:(NSRange)range
replacementLength:(NSUInteger)replacementLength;
#pragma mark Evaluating Expressions
@property (readonly, nonatomic, copy) NSString *definedVariable;
- (MPTerm *)parseExpectingVariable:(BOOL)flag error:(MPParseError *__autoreleasing *)error;
@end