| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorc.ast.simple.Expression
public abstract class Expression
Base class for the simplified abstract syntax tree.
| Constructor Summary | |
|---|---|
| Expression() | |
| Method Summary | |
|---|---|
|  Node | compile(Node output)Intermediate step to allow a one-step compile from the simple AST. | 
| abstract  Expr | convert(Env<Var> vars)Converts abstract syntax tree into a serializable form, used to generate portable .oil (Orc Intermediate Language) files. | 
|  Expression | suball(java.util.Map<NamedVar,? extends Argument> m)Perform a set of substitutions defined by a map. | 
| abstract  Expression | subst(Argument a,
      NamedVar x)Performs the substitution [a/x], replacing occurrences of the free variable x with the new argument a (which could be any argument, including another variable). | 
| abstract  java.util.Set<Var> | vars()Find the set of all unbound Vars (note: not FreeVars) in this expression. | 
| 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 Expr convert(Env<Var> vars)
                      throws CompilationException
vars - The vars environment, used in content addressable mode to 
                                find the appropriate deBruijn index of a var.
CompilationException
public abstract Expression subst(Argument a,
                                 NamedVar x)
a - The replacing variable or valuex - The free variable whose occurrences will be replacedpublic Expression suball(java.util.Map<NamedVar,? extends Argument> m)
m - public abstract java.util.Set<Var> vars()
public Node compile(Node output)
             throws CompilationException
CompilationException| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||