org.extex.ocpware.compiler.left
Class LeftList
java.lang.Object
org.extex.ocpware.compiler.left.LeftList
- All Implemented Interfaces:
- Left
public class LeftList
- extends java.lang.Object
- implements Left
This class represents a list of left items.
- Version:
- $Revision:6007 $
- Author:
- Gerd Neugebauer
|
Constructor Summary |
LeftList(java.util.List<Left> list)
Creates a new object. |
|
Method Summary |
java.util.List<java.lang.Integer> |
genLeft(State state,
CompilerState cs)
Compile the left item and add the appropriate instructions to the state. |
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
LeftList
public LeftList(java.util.List<Left> list)
- Creates a new object.
- Parameters:
list - the left list
genLeft
public java.util.List<java.lang.Integer> genLeft(State state,
CompilerState cs)
throws AliasNotDefinedException,
ArgmentTooBigException,
java.io.IOException,
IllegalOpcodeException
- Compile the left item and add the appropriate instructions to the state.
As a result a list of indices into the code is returned which should need
to be fixed. This fix inserts the position of the code into the places
given. Thus it is possible to put destinations for goto statements into
the holes.
- Specified by:
genLeft in interface Left
- Parameters:
state - the current statecs - the compiler state
- Returns:
- the list of instructions to fix
- Throws:
AliasNotDefinedException - in case that no matching alias is known
for a symbolic table reference
ArgmentTooBigException - in case that an argument is encountered
which does not fit into two bytes
java.io.IOException - in case of an I/O error
IllegalOpcodeException - in case of an illegal op code- See Also:
Left.genLeft(
org.extex.ocpware.compiler.parser.State, CompilerState)
toString
public java.lang.String toString()
-
- Overrides:
toString in class java.lang.Object
- See Also:
Object.toString()