#include <opennurbs_parse.h>
Public Types | |
enum | ERROR_CONDITION { no_error = 0, program_error = 1, invalid_expression_error = 2, divide_by_zero_error = 3, overflow_error = 4 } |
Public Member Functions | |
ON_ArithmeticCalculator () | |
ON_ArithmeticCalculator (const ON_ArithmeticCalculator &) | |
ON_ArithmeticCalculator (ON_ArithmeticCalculator &&) | |
bool | Add () |
Enter an explicit addition operator whose operands are the previous value and the next value, where a value is a number, simple number, or parenthetic expression. More... | |
void | ClearAll () |
Clear all status, values and expressions. More... | |
bool | Divide () |
Enter an explicit division operator whose operands are the previous value and the next value, where a value is a number, simple number, or parenthetic expression. If the second value is zero, the calculator state is set to error. More... | |
ERROR_CONDITION | ErrorCondition () const |
bool | Evaluate (double *value) |
Calculate the current value. More... | |
bool | ImpliedMultiplication () const |
bool | LeftParenthesis () |
Begin a parenthetic expression. More... | |
bool | Multiply () |
Enter an explicit multiplication operator whose operands are the previous value and the next value, where a value is a number, simple number, or parenthetic expression. More... | |
bool | Number (double x) |
Enter a number that can be used as an implied multiplication operand when implied multiplication is enabled and appropriate. More... | |
ON_ArithmeticCalculator & | operator= (const ON_ArithmeticCalculator &) |
ON_ArithmeticCalculator & | operator= (ON_ArithmeticCalculator &&) |
unsigned int | ParenthesesDepth () const |
bool | PendingImpliedMultiplication () const |
bool | PendingUnaryMinus () const |
bool | PendingUnaryOperation () const |
bool | PendingUnaryPlus () const |
bool | RightParenthesis () |
End a parenthetic expression. More... | |
void | SetImpliedMultiplication (bool bEnable) |
bool | SimpleNumber (double x) |
Enter a number that will never use implied multiplication. More... | |
bool | Subtract () |
Enter an explicit subtraction operator whose operands are the previous value and the next value, where a value is a number, simple number, or parenthetic expression. More... | |
bool | UnaryMinus () |
Enter an unary minus operator whose operand is the next number, simple number, or parenthetic expression. More... | |
bool | UnaryPlus () |
Enter an unary plus operator whose operand is the next number, simple number, or parenthetic expression. More... | |
ON_ArithmeticCalculator::ON_ArithmeticCalculator | ( | ) |
ON_ArithmeticCalculator::ON_ArithmeticCalculator | ( | const ON_ArithmeticCalculator & | ) |
ON_ArithmeticCalculator::ON_ArithmeticCalculator | ( | ON_ArithmeticCalculator && | ) |
bool ON_ArithmeticCalculator::Add | ( | ) |
Enter an explicit addition operator whose operands are the previous value and the next value, where a value is a number, simple number, or parenthetic expression.
void ON_ArithmeticCalculator::ClearAll | ( | ) |
Clear all status, values and expressions.
bool ON_ArithmeticCalculator::Divide | ( | ) |
Enter an explicit division operator whose operands are the previous value and the next value, where a value is a number, simple number, or parenthetic expression. If the second value is zero, the calculator state is set to error.
ERROR_CONDITION ON_ArithmeticCalculator::ErrorCondition | ( | ) | const |
bool ON_ArithmeticCalculator::Evaluate | ( | double * | value | ) |
Calculate the current value.
bool ON_ArithmeticCalculator::ImpliedMultiplication | ( | ) | const |
bool ON_ArithmeticCalculator::LeftParenthesis | ( | ) |
Begin a parenthetic expression.
bool ON_ArithmeticCalculator::Multiply | ( | ) |
Enter an explicit multiplication operator whose operands are the previous value and the next value, where a value is a number, simple number, or parenthetic expression.
bool ON_ArithmeticCalculator::Number | ( | double | x | ) |
Enter a number that can be used as an implied multiplication operand when implied multiplication is enabled and appropriate.
ON_ArithmeticCalculator& ON_ArithmeticCalculator::operator= | ( | const ON_ArithmeticCalculator & | ) |
ON_ArithmeticCalculator& ON_ArithmeticCalculator::operator= | ( | ON_ArithmeticCalculator && | ) |
unsigned int ON_ArithmeticCalculator::ParenthesesDepth | ( | ) | const |
bool ON_ArithmeticCalculator::PendingImpliedMultiplication | ( | ) | const |
bool ON_ArithmeticCalculator::PendingUnaryMinus | ( | ) | const |
bool ON_ArithmeticCalculator::PendingUnaryOperation | ( | ) | const |
bool ON_ArithmeticCalculator::PendingUnaryPlus | ( | ) | const |
bool ON_ArithmeticCalculator::RightParenthesis | ( | ) |
End a parenthetic expression.
void ON_ArithmeticCalculator::SetImpliedMultiplication | ( | bool | bEnable | ) |
bool ON_ArithmeticCalculator::SimpleNumber | ( | double | x | ) |
Enter a number that will never use implied multiplication.
bool ON_ArithmeticCalculator::Subtract | ( | ) |
Enter an explicit subtraction operator whose operands are the previous value and the next value, where a value is a number, simple number, or parenthetic expression.
bool ON_ArithmeticCalculator::UnaryMinus | ( | ) |
Enter an unary minus operator whose operand is the next number, simple number, or parenthetic expression.
bool ON_ArithmeticCalculator::UnaryPlus | ( | ) |
Enter an unary plus operator whose operand is the next number, simple number, or parenthetic expression.