gnu.expr
Class BeginExp
java.lang.Object
gnu.mapping.Procedure
gnu.mapping.Procedure0
gnu.expr.Expression
gnu.expr.BeginExp
- All Implemented Interfaces:
- Named, Printable
public class BeginExp
- extends Expression
This class represents a sequence of Expressions.
The expressions are evaluated for their side-effects,
and the value of the last Expression is the result.
A BeginExp may optionally have "compilation options"
which can be used to control various compile-time
aspects of Kawa, such as warning messages.
Methods inherited from class gnu.expr.Expression |
apply0, compile, compileButFirst, compileNotePosition, compileWithPosition, compileWithPosition, eval, getColumn, getFile, getFlag, getFlags, getLine, makeWhile, match0, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine |
Methods inherited from class gnu.mapping.Procedure |
apply, check0, check1, check2, check3, check4, checkArgCount, checkN, getName, getProperty, getSetter, getSymbol, match1, match2, match3, match4, matchN, maxArgs, minArgs, name, removeProperty, set0, set1, setN, setName, setProperty, setProperty, setSetter, setSymbol, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
BeginExp
public BeginExp()
BeginExp
public BeginExp(Expression[] ex)
BeginExp
public BeginExp(Expression exp0,
Expression exp1)
canonicalize
public static final Expression canonicalize(Expression exp)
- Simplifies BeginExp.
(In the future, nested BeginExps may be "flattened" as well.)
canonicalize
public static final Expression canonicalize(Expression[] exps)
add
public final void add(Expression exp)
getExpressions
public final Expression[] getExpressions()
setExpressions
public final void setExpressions(Expression[] exps)
setCompileOptions
public void setCompileOptions(java.util.Vector options)
eval
public java.lang.Object eval(Environment env)
throws java.lang.Throwable
- Overrides:
eval
in class Expression
- Throws:
java.lang.Throwable
apply
public void apply(CallContext ctx)
throws java.lang.Throwable
- Description copied from class:
Procedure
- Call this Procedure using the explicit-CallContext-convention.
The input arguments are (by default) in stack.args;
the result is written to ctx.consumer.
- Overrides:
apply
in class Expression
- Throws:
java.lang.Throwable
pushOptions
public void pushOptions(Compilation comp)
popOptions
public void popOptions(Compilation comp)
compile
public void compile(Compilation comp,
Target target)
- Specified by:
compile
in class Expression
walk
protected Expression walk(ExpWalker walker)
- Overrides:
walk
in class Expression
walkChildren
protected void walkChildren(ExpWalker walker)
- Overrides:
walkChildren
in class Expression
print
public void print(OutPort out)
- Specified by:
print
in class Expression
getType
public Type getType()
- Description copied from class:
Expression
- Return the Type used to represent the values of this Expression.
- Overrides:
getType
in class Expression