Package gnu.jel
Class OPunary
java.lang.Object
gnu.jel.OP
gnu.jel.OPunary
public class OPunary extends OP
A tree node, representing unary operation.
- 
Field SummaryFields Modifier and Type Field Description intcodecode of this operationprotected static byte[]unary_prmtnsunary promotions of base types
- 
Constructor Summary
- 
Method Summary
- 
Field Details- 
codepublic int codecode of this operation
- 
unary_prmtnsprotected static final byte[] unary_prmtnsunary promotions of base types
 
- 
- 
Constructor Details- 
OPunaryConstructs a new unary operation.Codes are following: 0 -- negation (applicable to anything except boolean) 1 -- bitwise not (applicable to all integral types) 2 -- logical not (applicable to booleans only) 3 -- return the type in stack - Parameters:
- paramOPs- stack holding the operands
- code- operation code
- Throws:
- CompilationException
 
- 
OPunarypublic OPunary(java.util.Stack<OP> paramOPs, int targetID, java.lang.Class<?> targetClass, boolean allownarrowing) throws CompilationExceptionCreates conversion operation to the given class.- Parameters:
- paramOPs- stack holding the operands
- targetID- ID of primitive type to convert to.
- targetClass- the class to convert to, in case cldID=8
- allownarrowing- if narrowing conversions are allowed.
- Throws:
- CompilationException
 
 
- 
- 
Method Details- 
compileDescription copied from class:OPCalled to generate the code implementing this OP.
- 
evalpublic java.lang.Object eval() throws java.lang.ExceptionDescription copied from class:OPCalled to evaluate this node and all its sub-nodes.Upon success this node is to be replaced by the constant node holding the returned object. 
 
-