Uses of Class
orc.ast.simple.Expression

Packages that use Expression
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.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 AssertType.simplify()
           
 Expression Atomic.simplify()
           
 Expression HasType.simplify()
           
 Expression Semi.simplify()
           
 Expression Isolated.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)
           
 Expression TypeAliasDeclaration.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)
           
 Expression TypeAliasDeclaration.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)
           
 Expression Attachment.attach(Expression f, Type t)
           
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.
static Expression Pattern.fail()
          Return a default expression to use in case a pattern match fails.
 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)
           
 Expression Attachment.attach(Expression f, Type t)
           
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 Atomic
           
 class Call
           
 class Defs
           
 class HasType
          An expression with an ascribed syntactic type.
 class Isolated
          The "isolated" keyword.
 class Let
           
 class Parallel
           
 class Semi
           
 class Sequential
           
 class Silent
           
 class TypeDecl
          A syntactic type declaration.
 class Where
           
 class WithLocation
          Annotate an expression with a source location.
 

Fields in orc.ast.simple declared as Expression
 Expression HasType.body
           
 Expression TypeDecl.body
           
 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 Atomic.subst(Argument a, NamedVar x)
           
 Expression HasType.subst(Argument a, NamedVar x)
           
 Expression Semi.subst(Argument a, NamedVar x)
           
 Expression Isolated.subst(Argument a, NamedVar x)
           
 Expression TypeDecl.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)
           
 Expression Expression.subvar(Var v, NamedVar x)
          Performs the substitution [v/x], replacing occurrences of the free variable x with the nameless variable v.
 

Constructors in orc.ast.simple with parameters of type Expression
Atomic(Expression body)
           
Definition(Var name, java.util.List<Var> formals, Expression body, java.util.List<java.lang.String> typeParams, java.util.List<Type> argTypes, Type resultType, SourceLocation location)
          Note that the constructor takes a bound Var as a name parameter.
Defs(java.util.List<Definition> defs, Expression body)
           
HasType(Expression body, Type type, boolean checkable)
           
Isolated(Expression body)
           
Parallel(Expression left, Expression right)
           
Semi(Expression left, Expression right)
           
Sequential(Expression left, Expression right, Var v)
           
TypeDecl(Type type, java.lang.String name, Expression body)
           
Where(Expression left, Expression right, Var v)
           
WithLocation(Expression expr, SourceLocation location)