Archived
1
This repository has been archived on 2022-08-08. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
mathpad/MathPad/MPFractionFunction.m
2014-11-07 19:50:28 +01:00

39 lines
984 B
Objective-C

//
// MPFractionFunction.m
// MathPad
//
// Created by Kim Wittenburg on 07.10.14.
// Copyright (c) 2014 Kim Wittenburg. All rights reserved.
//
#import "MPFractionFunction.h"
#import "MPExpressionTree.h"
@implementation MPFractionFunction
MPFunctionAccessorImplementation(NominatorExpression, _nominatorExpression)
MPFunctionAccessorImplementation(DenominatorExpression, _denominatorExpression)
- (NSArray *)childrenAccessors
{
return @[@"nominatorExpression", @"denominatorExpression"];
}
- (BOOL)validate:(NSError *__autoreleasing *)error
{
return [[self.nominatorExpression parse] validate:error] && [[self.denominatorExpression parse] validate:error];
}
- (NSDecimalNumber *)evaluate
{
return [[[self.nominatorExpression parse] evaluate] decimalNumberByDividingBy:[[self.denominatorExpression parse] evaluate]];
}
- (NSString *)description
{
return [NSString stringWithFormat:@"%@ / %@", self.nominatorExpression, self.denominatorExpression];
}
@end