gnu.expr
Class IfExp

java.lang.Object
  extended by gnu.mapping.Procedure
      extended by gnu.mapping.Procedure0
          extended by gnu.expr.Expression
              extended by gnu.expr.IfExp
All Implemented Interfaces:
Named, Printable

public class IfExp
extends Expression

This class represents a conditional.


Field Summary
 
Fields inherited from class gnu.expr.Expression
flags, NEXT_AVAIL_FLAG, noExpressions
 
Constructor Summary
IfExp(Expression i, Expression t, Expression e)
           
 
Method Summary
 void apply(CallContext ctx)
          Call this Procedure using the explicit-CallContext-convention.
 void compile(Compilation comp, Target target)
           
static void compile(Expression test, Expression then_clause, Expression else_clause, Compilation comp, Target target)
           
 java.lang.Object eval(Environment env)
           
protected  Language getLanguage()
           
 void print(OutPort out)
           
protected  Expression walk(ExpWalker walker)
           
protected  void walkChildren(ExpWalker walker)
           
 
Methods inherited from class gnu.expr.Expression
apply0, compile, compileButFirst, compileNotePosition, compileWithPosition, compileWithPosition, eval, getColumn, getFile, getFlag, getFlags, getLine, getType, makeWhile, match0, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine
 
Methods inherited from class gnu.mapping.Procedure0
apply1, apply2, apply3, apply4, applyN, numArgs
 
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
 

Constructor Detail

IfExp

public IfExp(Expression i,
             Expression t,
             Expression e)
Method Detail

getLanguage

protected final Language getLanguage()

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

compile

public void compile(Compilation comp,
                    Target target)
Specified by:
compile in class Expression

compile

public static void compile(Expression test,
                           Expression then_clause,
                           Expression else_clause,
                           Compilation comp,
                           Target target)

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