Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
gnu.mapping.Procedure
gnu.mapping.Procedure0
gnu.expr.Expression
gnu.expr.ApplyExp
public class ApplyExp
extends Expression
Field Summary | |
static int | |
static int | |
ApplyExp |
|
protected Type |
|
Fields inherited from class gnu.expr.Expression | |
NEXT_AVAIL_FLAG , flags , noExpressions |
Constructor Summary | |
| |
| |
|
Method Summary | |
void |
|
static void |
|
void |
|
static void |
|
Object |
|
int | |
Expression[] |
|
Expression | |
Object |
|
Type |
|
Expression |
|
Expression |
|
boolean | |
void | |
void |
|
void |
|
void |
|
protected Expression | |
protected void |
|
Methods inherited from class gnu.expr.Expression | |
apply , apply0 , compile , compile , compileNotePosition , compileWithPosition , compileWithPosition , eval , eval , getColumn , getFile , getFlag , getFlags , getLine , getType , makeWhile , match0 , print , print , printLineColumn , setFile , setFlag , setFlag , setLine , setLine , setLine , setLine , walk , walkChildren |
Methods inherited from class gnu.mapping.Procedure0 | |
apply0 , apply1 , apply2 , apply3 , apply4 , applyN , numArgs |
Methods inherited from class gnu.mapping.Procedure | |
apply , apply , apply0 , apply1 , apply2 , apply3 , apply4 , applyN , check0 , check1 , check2 , check3 , check4 , checkArgCount , checkN , getName , getProperty , getSetter , getSymbol , match0 , match1 , match2 , match3 , match4 , matchN , maxArgs , minArgs , name , numArgs , removeProperty , set0 , set1 , setN , setName , setProperty , setProperty , setSetter , setSymbol , toString |
public static final int INLINE_IF_CONSTANT
- Field Value:
- 2
public static final int TAILCALL
- Field Value:
- 1
public void compile(Compilation comp, Target target)
- Overrides:
- compile in interface Expression
public final int getArgCount()
public final Object getFunctionValue()
If getFunction() is constant, return its value; otherwise null.
public final Expression inlineIfConstant(Procedure proc, SourceMessages messages)
Inline this ApplyExp if parameters are constant.
- Parameters:
proc
- the procedure bound to this.func.
- Returns:
- the constant result (as a QuoteExp) if inlining was possible; otherwise this ApplyExp. If applying proc throws an exception, print a warning on walker.messages.
public final boolean isTailCall()
public final void setTailCall(boolean tailCall)
protected void walkChildren(ExpWalker walker)
- Overrides:
- walkChildren in interface Expression