|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorc.ast.oil.expression.Expression
public abstract class Expression
Base class for the portable (.oil, for Orc Intermediate Language) abstract syntax tree.
Constructor Summary | |
---|---|
Expression()
|
Method Summary | ||
---|---|---|
abstract
|
accept(Visitor<E> visitor)
|
|
abstract void |
addIndices(java.util.Set<java.lang.Integer> indices,
int depth)
If this expression has any indices which are >= depth, add (index - depth) to the index set accumulator. |
|
java.util.Set<Variable> |
freeVars()
Find the set of free variables in this expression. |
|
abstract Expression |
marshal()
|
|
static Expression[] |
marshalAll(java.util.List<Expression> es)
Convenience method, to marshal a list of expressions. |
|
void |
typecheck(TypingContext ctx,
Type T)
|
|
abstract Type |
typesynth(TypingContext ctx)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Expression()
Method Detail |
---|
public abstract Type typesynth(TypingContext ctx) throws TypeException
TypeException
public void typecheck(TypingContext ctx, Type T) throws TypeException
TypeException
public final java.util.Set<Variable> freeVars()
public abstract void addIndices(java.util.Set<java.lang.Integer> indices, int depth)
indices
- The index set accumulator.depth
- The minimum index for a free variable.public abstract <E> E accept(Visitor<E> visitor)
public abstract Expression marshal() throws CompilationException
CompilationException
public static Expression[] marshalAll(java.util.List<Expression> es) throws CompilationException
CompilationException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |