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.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)
           
static Expression Orc.compile(java.io.Reader source, Config cfg, boolean includeStdlib)
           
 

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 Tuple.simplify()
           
 Expression Semi.simplify()
           
 Expression Literal.simplify()
           
 Expression NilExpr.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()
           
 Expression Clause.simplify(java.util.List<Var> formals, Expression otherwise)
           
 

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.
 Expression Clause.simplify(java.util.List<Var> formals, Expression otherwise)
           
 

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)
           
 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)
           
 Expression Declaration.bindto(Expression target)
           
 

Uses of Expression in orc.ast.extended.pattern
 

Methods in orc.ast.extended.pattern that return Expression
 Expression Pattern.bind(Expression f, Expression g)
           
 Expression AsPattern.bind(Var u, Expression g)
           
 Expression TuplePattern.bind(Var u, Expression g)
           
 Expression ListPattern.bind(Var u, Expression g)
           
abstract  Expression Pattern.bind(Var u, Expression g)
           
 Expression PublishPattern.bind(Var u, Expression g)
           
 Expression VariablePattern.bind(Var u, Expression g)
           
 Expression CallPattern.bind(Var u, Expression g)
           
 Expression WildcardPattern.bind(Var u, Expression g)
           
 Expression LiteralPattern.bind(Var u, Expression g)
           
 Expression ConsPattern.bind(Var u, Expression g)
           
 Expression NilPattern.bind(Var u, Expression g)
           
static Expression Pattern.filter(Expression e)
          Filter an expression by piping its publications through isSome.
static Expression Pattern.ifexp(Expression test, Expression tc, Expression fc)
           
static Expression Pattern.lift(java.util.List<Expression> es)
          Lifted application of a site to a list of optional arguments.
 Expression Pattern.match(Expression f)
           
 Expression AsPattern.match(Var u)
           
 Expression TuplePattern.match(Var u)
           
 Expression ListPattern.match(Var u)
           
abstract  Expression Pattern.match(Var u)
           
 Expression PublishPattern.match(Var u)
           
 Expression VariablePattern.match(Var u)
           
 Expression CallPattern.match(Var u)
           
 Expression WildcardPattern.match(Var u)
           
 Expression LiteralPattern.match(Var u)
           
 Expression ConsPattern.match(Var u)
           
 Expression NilPattern.match(Var u)
           
static Expression Pattern.opbind(Expression f, Var t, Expression g)
          Create an expression computing a monadic bind for options.
 

Methods in orc.ast.extended.pattern with parameters of type Expression
 Expression Pattern.bind(Expression f, Expression g)
           
 Expression AsPattern.bind(Var u, Expression g)
           
 Expression TuplePattern.bind(Var u, Expression g)
           
 Expression ListPattern.bind(Var u, Expression g)
           
abstract  Expression Pattern.bind(Var u, Expression g)
           
 Expression PublishPattern.bind(Var u, Expression g)
           
 Expression VariablePattern.bind(Var u, Expression g)
           
 Expression CallPattern.bind(Var u, Expression g)
           
 Expression WildcardPattern.bind(Var u, Expression g)
           
 Expression LiteralPattern.bind(Var u, Expression g)
           
 Expression ConsPattern.bind(Var u, Expression g)
           
 Expression NilPattern.bind(Var u, Expression g)
           
static Expression Pattern.filter(Expression e)
          Filter an expression by piping its publications through isSome.
static Expression Pattern.ifexp(Expression test, Expression tc, Expression fc)
           
 Expression Pattern.match(Expression f)
           
static Expression Pattern.opbind(Expression f, Var t, Expression g)
          Create an expression computing a monadic bind for options.
 

Method parameters in orc.ast.extended.pattern with type arguments of type Expression
static Expression Pattern.lift(java.util.List<Expression> es)
          Lifted application of a site to a list of optional arguments.
 

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
           
 

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 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)
          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)