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

32
MathPad/MPNegatedTerm.m Normal file
View File

@@ -0,0 +1,32 @@
//
// MPNegatedTerm.m
// MathPad
//
// Created by Kim Wittenburg on 22.11.14.
// Copyright (c) 2014 Kim Wittenburg. All rights reserved.
//
#import "MPNegatedTerm.h"
@implementation MPNegatedTerm
- (instancetype)initWithTerm:(MPTerm *)term
{
self = [super init];
if (self) {
NSAssert(term != nil, @"term must not be nil.");
_term = term;
}
return self;
}
- (NSDecimalNumber *)doEvaluation:(NSError *__autoreleasing *)error
{
NSDecimalNumber *value = [self.term evaluate:error];
if (value) {
value = [value decimalNumberByMultiplyingBy:[[NSDecimalNumber alloc] initWithInteger:-1]];
}
return value;
}
@end