Archived
1

Fundamental Redesign of Evaluation

This commit is contained in:
Kim Wittenburg
2014-11-24 22:42:44 +01:00
parent 10f0e73ad3
commit 7a32e3b0b6
45 changed files with 1398 additions and 350 deletions

View File

@@ -8,8 +8,8 @@
#import "MPFractionFunction.h"
#import "MPFractionTerm.h"
#import "MPExpression.h"
#import "MPExpressionTree.h"
@implementation MPFractionFunction
@@ -21,14 +21,9 @@ MPFunctionAccessorImplementation(DenominatorExpression, _denominatorExpression)
return @[@"nominatorExpression", @"denominatorExpression"];
}
- (BOOL)validate:(NSError *__autoreleasing *)error
- (Class)functionTermClass
{
return [[self.nominatorExpression parse] validate:error] && [[self.denominatorExpression parse] validate:error];
}
- (NSDecimalNumber *)evaluate
{
return [[[self.nominatorExpression parse] evaluate] decimalNumberByDividingBy:[[self.denominatorExpression parse] evaluate]];
return [MPFractionTerm class];
}
- (NSString *)description