operators
Class PSNe

java.lang.Object
  extended byoperators.PSNe
All Implemented Interfaces:
pstypes.PSEqualityOperator, pstypes.PSObject, pstypes.PSOperator

public class PSNe
extends java.lang.Object
implements pstypes.PSEqualityOperator

Implements PSEqualityOperator interface.

Methods such as getOperatorToken() are inherited from PSEqualityOperator interface which, in turn, are inherited from PSOperator. This concrete class is responsible for comparing the top 2 literals of the Runtime Stack pushing back a boolean value representing if they are equal or not (true if they are).

Before comparison action() has to check if there are 2 PSNumber, PSStrings or PSBoolean literals on top of the runtime stack.


Constructor Summary
PSNe()
           
 
Method Summary
 void action(dtypes.PSStack s)
          Compares the literals given and returns the result back to the stack.
 java.lang.String getOperatorToken()
          Returns the token identifying this operator.
 boolean isValid(dtypes.PSStack s)
          Checks if it valid to use this operator now.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PSNe

public PSNe()
Method Detail

getOperatorToken

public java.lang.String getOperatorToken()
Returns the token identifying this operator.

Returns the name of the operand that this concrete class simulates, here "ne".

Precondition : A valid operator class has been created.
Postcondition : A string is returned, labeling the semantics of this class.

Specified by:
getOperatorToken in interface pstypes.PSOperator
Returns:
The token identifying this operator.

isValid

public boolean isValid(dtypes.PSStack s)
                throws exceptions.PSSyntaxException
Checks if it valid to use this operator now.

Comparison can occur if there are 2 literals on top of the stack.

Precondition : A valid instance of PSStack is given with 2 literals of the same type on top.
Postcondition : A reply to the question whether the operator can perfom its defined behaviour.

Specified by:
isValid in interface pstypes.PSOperator
Parameters:
s - A reference to PSStack instance.
Returns:
True if the operation can be executed, false otherwise.
Throws:
exceptions.PSSyntaxException - The syntax of the token is wrong.

action

public void action(dtypes.PSStack s)
Compares the literals given and returns the result back to the stack.

Precondition : A valid stack is given to method with 2 literals of the same type on top.
Postcondition : A boolean value will be pushed back to the Runtime Stack.

Specified by:
action in interface pstypes.PSEqualityOperator
Parameters:
s - The Runtime Stack which holds the literals.