Uses of Class
orc.ast.simple.Expression

Packages that use Expression
orc Top-level package for all Orc code. 
orc.ast.extended Desugared AST which is very close to the source form. 
orc.ast.extended.declaration   
orc.ast.extended.declaration.defn   
orc.ast.extended.declaration.type   
orc.ast.extended.pattern   
orc.ast.simple Desugared AST which is close to the final format (OIL) but includes named variables. 
 

Uses of Expression in orc
 

Methods in orc that return Expression
static Expression Orc.compile(java.io.Reader source, Config cfg)
           
 

Uses of Expression in orc.ast.extended
 

Methods in orc.ast.extended that return Expression
 Expression Expression.Arg.bind(Expression e)
          Wraps a binder around the given expression if needed.
 Expression Semi.simplify()
           
 Expression Literal.simplify()
           
 Expression NilExpr.simplify()
           
 Expression IfThenElse.simplify()
           
 Expression Name.simplify()
           
 Expression Dot.simplify()
           
 Expression Silent.simplify()
           
abstract  Expression Expression.simplify()
          Simplify an expression which occurs in a call (non-nested) position.
 Expression Parallel.simplify()
           
 Expression Call.simplify()
           
 Expression ConsExpr.simplify()
           
 Expression Lambda.simplify()
           
 Expression Let.simplify()
           
 Expression ListExpr.simplify()
           
 Expression Declare.simplify()
           
 Expression Sequential.simplify()
           
 Expression Field.simplify()
           
 Expression Where.simplify()
           
 

Methods in orc.ast.extended with parameters of type Expression
 Expression Expression.Arg.bind(Expression e)
          Wraps a binder around the given expression if needed.
 

Uses of Expression in orc.ast.extended.declaration
 

Methods in orc.ast.extended.declaration that return Expression
 Expression ClassDeclaration.bindto(Expression target)
           
 Expression ValDeclaration.bindto(Expression target)
           
 Expression SiteDeclaration.bindto(Expression target)
           
 Expression DefsDeclaration.bindto(Expression target)
           
abstract  Expression Declaration.bindto(Expression target)
           
 

Methods in orc.ast.extended.declaration with parameters of type Expression
 Expression ClassDeclaration.bindto(Expression target)
           
 Expression ValDeclaration.bindto(Expression target)
           
 Expression SiteDeclaration.bindto(Expression target)
           
 Expression DefsDeclaration.bindto(Expression target)
           
abstract  Expression Declaration.bindto(Expression target)
           
 

Uses of Expression in orc.ast.extended.declaration.defn
 

Methods in orc.ast.extended.declaration.defn that return Expression
 Expression Clause.simplify(java.util.List<Var> formals, Expression otherwise)
           
 

Methods in orc.ast.extended.declaration.defn with parameters of type Expression
 Expression Clause.simplify(java.util.List<Var> formals, Expression otherwise)
           
 

Uses of Expression in orc.ast.extended.declaration.type
 

Methods in orc.ast.extended.declaration.type that return Expression
 Expression TypeDeclaration.bindto(Expression target)
           
 Expression DatatypeDeclaration.bindto(Expression target)
           
 

Methods in orc.ast.extended.declaration.type with parameters of type Expression
 Expression TypeDeclaration.bindto(Expression target)
           
 Expression DatatypeDeclaration.bindto(Expression target)
           
 

Uses of Expression in orc.ast.extended.pattern
 

Fields in orc.ast.extended.pattern declared as Expression
 Expression Attachment.e
           
 

Methods in orc.ast.extended.pattern that return Expression
 Expression Attachment.attach(Expression f)
           
static Expression Pattern.caseof(Var arg, Var s, Expression succ, Expression fail)
          Constructs an optional case statement.
static Expression Pattern.compare(Argument s, Argument t)
          Construct an expression comparing two arguments.
 Expression PatternSimplifier.filter()
           
static Expression Pattern.lift(Var x)
          Lifts a partial function to a total function, using the ; combinator to detect a refusal to respond, and publishing optional values instead of values.
static Expression Pattern.nth(Argument s, int i)
          Construct an expression which publishes the ith element of tuple s.
 Expression PatternSimplifier.target(Var u, Expression g)
           
static Expression Pattern.trycons(Argument s)
          Constructs an expression which will try to deconstruct an argument as if it were a list.
static Expression Pattern.trynil(Argument s)
          Constructs an expression which tests whether the argument s can be treated as an empty list (nil).
static Expression Pattern.trysize(Argument s, int n)
          Construct an expression to determine whether the argument s may be viewed as a tuple of size n.
static Expression Pattern.unapply(Argument m, Argument s)
          Construct an expression which tries to find the inverse of the site m, and apply it to s.
 

Methods in orc.ast.extended.pattern with parameters of type Expression
 void PatternSimplifier.assign(Var s, Expression e)
           
 Expression Attachment.attach(Expression f)
           
static Expression Pattern.caseof(Var arg, Var s, Expression succ, Expression fail)
          Constructs an optional case statement.
 Expression PatternSimplifier.target(Var u, Expression g)
           
 

Constructors in orc.ast.extended.pattern with parameters of type Expression
Attachment(Var v, Expression e)
           
 

Uses of Expression in orc.ast.simple
 

Subclasses of Expression in orc.ast.simple
 class Call
           
 class Defs
           
 class Let
           
 class Parallel
           
 class Semi
           
 class Sequential
           
 class Silent
           
 class Where
           
 class WithLocation
          Annotate an expression with a source location.
 

Fields in orc.ast.simple declared as Expression
 Expression Definition.body
           
 Expression Defs.body
           
 

Methods in orc.ast.simple that return Expression
 Expression Expression.suball(java.util.Map<NamedVar,? extends Argument> m)
          Perform a set of substitutions defined by a map.
 Expression WithLocation.subst(Argument a, NamedVar x)
           
 Expression Semi.subst(Argument a, NamedVar x)
           
 Expression Silent.subst(Argument a, NamedVar x)
           
abstract  Expression 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).
 Expression Parallel.subst(Argument a, NamedVar x)
           
 Expression Call.subst(Argument a, NamedVar x)
           
 Expression Defs.subst(Argument a, NamedVar x)
           
 Expression Let.subst(Argument a, NamedVar x)
           
 Expression Where.subst(Argument a, NamedVar x)
           
 

Constructors in orc.ast.simple with parameters of type Expression
Definition(Var name, java.util.List<Var> formals, Expression body, ArrowType type)
          Note that the constructor takes a bound Var as a name parameter.
Defs(java.util.List<Definition> defs, Expression body)
           
Parallel(Expression left, Expression right)
           
Semi(Expression left, Expression right)
           
Sequential(Expression left, Expression right, Var v)
           
Where(Expression left, Expression right, Var v)
           
WithLocation(Expression expr, SourceLocation location)