Package parser
Class UnaryPostOperator
java.lang.Object
parser.Operator
parser.UnaryPostOperator
- All Implemented Interfaces:
Validatable
public class UnaryPostOperator extends Operator implements Validatable
Models a post-operand Operator
object e.g the !, inverse, square, cube operators
- Author:
- GBEMIRO
-
Field Summary
Fields inherited from class parser.Operator
AND, ASSIGN, AT, CLOSE_CIRC_BRAC, CLOSE_SQUARE_BRAC, COLON, COMBINATION, COMMA, CONST, CUBE, CUBE_ROOT, DIVIDE, EN_DASH, EQUALS, EXIT, FACTORIAL, GREATER_OR_EQUALS, GREATER_THAN, INVERSE, LESS_OR_EQUALS, LESS_THAN, MINUS, MULTIPLY, name, OPEN_CIRC_BRAC, OPEN_SQUARE_BRAC, operators, OR, PERMUTATION, PLUS, POWER, REMAINDER, ROOT, SEMI_COLON, SPACE, SQUARE, STORE -
Constructor Summary
Constructors Constructor Description UnaryPostOperator(java.lang.String name, int index, java.util.ArrayList<java.lang.String> scan)Creates a new UnaryPostOperator object -
Method Summary
Modifier and Type Method Description static voidassignCompoundTokens(java.util.ArrayList<java.lang.String> scan)Carefully interpretes the correct arrangement of a loose math statement for objects of this class and applies the correct one to the MathExpression object.PrecedencegetPrecedence()booleanvalidate(java.util.ArrayList<java.lang.String> scan)Methods inherited from class parser.Operator
getName, getPrecedence, isAssignmentOperator, isAtOperator, isBinaryOperator, isBracket, isClosingBrace, isClosingBracket, isColon, isComma, isConstantStoreCommand, isCube, isCubeRoot, isEqualsOperator, isExitCommand, isFactorial, isInverse, isLogicOperator, isMulOrDiv, isMulOrDivOrRemOrPermOrCombOrPow, isOpeningBrace, isOpeningBracket, isOperatorString, isPermOrComb, isPlusOrMinus, isPower, isRemainder, isSemiColon, isSquare, isSquareRoot, isStoreCommand, isUnaryPostOperator, isUnaryPreOperator, setName, validateAll
-
Constructor Details
-
UnaryPostOperator
public UnaryPostOperator(java.lang.String name, int index, java.util.ArrayList<java.lang.String> scan)Creates a new UnaryPostOperator object- Parameters:
name- The name that identifies this UnaryPostOperator objectscan- The List object that contains the tokens
-
-
Method Details
-
getPrecedence
- Returns:
- the Precedence of this Operator object.
-
validate
public boolean validate(java.util.ArrayList<java.lang.String> scan)- Specified by:
validatein interfaceValidatable- Parameters:
scan- the scanner-list object that this UnaryPostOperator object exists in. validates the grammatical usage of this operator (by leaving the correctFunction attribute of the function object un-modified) if the usage of this operator in its immediate environment i.e to its left and right is correct.- Returns:
- true if the grammatical usage of this token with respect to its 2 immediate neighboring tokens to the left and to the right is correct.
-
assignCompoundTokens
public static void assignCompoundTokens(java.util.ArrayList<java.lang.String> scan)Carefully interpretes the correct arrangement of a loose math statement for objects of this class and applies the correct one to the MathExpression object. Examples: ²,³,-¹,!- Parameters:
scan- The ArrayList object that is the scanner of the MathExpression object and so contains this UnaryPostOperator object
-