gnu.jel
Class OPload
java.lang.Object
|
+--gnu.jel.OP
|
+--gnu.jel.OPload
- public class OPload
- extends OP
A tree node, representing loading of a constant.
Field Summary |
java.lang.Object |
what
Holds an object to be loaded |
Constructor Summary |
OPload(java.lang.Object what)
Creates an OP, loading a constant. |
OPload(OP instead,
java.lang.Object what)
Creates an OP, loading a constant to be put instead of another OP. |
Method Summary |
void |
compile(ClassFile cf)
Called to generate the code implementing this OP. |
java.lang.Object |
eval()
Called to evaluate this node and all its sub-nodes. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
what
public java.lang.Object what
- Holds an object to be loaded
OPload
public OPload(java.lang.Object what)
- Creates an OP, loading a constant.
- Parameters:
what
- is a constant wrapped into a reflection object. E.g
java.lang.Integer(1) to load 1 of
primitive type int.
OPload
public OPload(OP instead,
java.lang.Object what)
- Creates an OP, loading a constant to be put instead of another OP.
For private JEL usage in constants folding.
- Parameters:
istead
- an OP, which will be raplaced by this OPload.what
- is a constant wrapped into a reflection object. E.g
java.lang.Integer(1) to load 1 of
primitive type int.
eval
public java.lang.Object eval()
throws java.lang.Exception
- Description copied from class:
OP
- Called 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.
- Overrides:
eval
in class OP
- Following copied from class:
gnu.jel.OP
- Returns:
- an object to which this node evaluates
- Throws:
if
- can't evaluate, in this case the sub-nodes
compile
public void compile(ClassFile cf)
- Description copied from class:
OP
- Called to generate the code implementing this OP.
- Overrides:
compile
in class OP
- Following copied from class:
gnu.jel.OP
- Parameters:
cf
- class file with a new open method to write the code into.