ist.palcom.st.ast
Class ASTExpression
java.lang.Object
ist.palcom.st.ast.ASTExpression
- Direct Known Subclasses:
- ASTBlockExpression, ASTExitExpression, ASTIfExpression, ASTLiteralExpression, ASTLoopExpression, ASTMessageSend, ASTPrimitiveCall, ASTVariableExpression
public abstract class ASTExpression
- extends java.lang.Object
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
empty_list
protected static java.util.List<ASTExpression> empty_list
ASTExpression
public ASTExpression()
set_assignments
public void set_assignments(java.util.List assignments)
compile
public abstract boolean compile(ASTBytecodeGenerator generator,
ASTBlock context,
boolean resultWillBeDiscarded)
compile_assignments
public boolean compile_assignments(ASTBytecodeGenerator generator,
ASTBlock context,
boolean resultWillBeDiscarded)
inlineBlocks
public ASTExpression inlineBlocks()
setFields
public void setFields(ASTBlock context)
setContextOfSubblocks
public void setContextOfSubblocks(ASTBlock context)
isInlinableBlock
public boolean isInlinableBlock()
renameVariable
public void renameVariable(ASTVariable oldV,
ASTVariable newV)
subexpressionsHaveVariableNamed
public boolean subexpressionsHaveVariableNamed(ASTVariable v)
getSubExpressions
public abstract java.util.List<ASTExpression> getSubExpressions()
- Returns a read-only list of expressions below this one in the AST
disambiguateVariables
public void disambiguateVariables()
liftLocals
public void liftLocals(boolean nilThemToo)