orc.ast.extended.expression
Class Call

java.lang.Object
  extended by orc.ast.extended.expression.Expression
      extended by orc.ast.extended.expression.Call
All Implemented Interfaces:
ASTNode, Locatable, Located

public class Call
extends Expression


Nested Class Summary
 
Nested classes/interfaces inherited from class orc.ast.extended.expression.Expression
Expression.Arg
 
Field Summary
 java.util.List<Expression> args
           
 Expression caller
           
 java.util.List<Type> typeArgs
           
 
Constructor Summary
Call(Expression caller)
           
Call(Expression caller, Expression arg)
           
Call(Expression caller, java.util.List<Expression> args)
           
Call(Expression caller, java.util.List<Expression> args, java.util.List<Type> typeArgs)
           
Call(java.lang.String s)
           
Call(java.lang.String s, Expression arg)
           
Call(java.lang.String s, Expression left, Expression right)
           
Call(java.lang.String s, java.util.List<Expression> args)
           
 
Method Summary
<E> E
accept(Visitor<E> visitor)
           
 Expression simplify()
          Simplify an expression which occurs in a call (non-nested) position.
 java.lang.String toString()
           
 
Methods inherited from class orc.ast.extended.expression.Expression
argify, getSourceLocation, join, setSourceLocation, uncurry
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

caller

public Expression caller

args

public java.util.List<Expression> args

typeArgs

public java.util.List<Type> typeArgs
Constructor Detail

Call

public Call(Expression caller,
            java.util.List<Expression> args,
            java.util.List<Type> typeArgs)

Call

public Call(Expression caller,
            java.util.List<Expression> args)

Call

public Call(Expression caller,
            Expression arg)

Call

public Call(Expression caller)

Call

public Call(java.lang.String s,
            java.util.List<Expression> args)

Call

public Call(java.lang.String s,
            Expression left,
            Expression right)

Call

public Call(java.lang.String s,
            Expression arg)

Call

public Call(java.lang.String s)
Method Detail

simplify

public Expression simplify()
                    throws CompilationException
Description copied from class: Expression
Simplify an expression which occurs in a call (non-nested) position.

Specified by:
simplify in class Expression
Returns:
The simplified expression
Throws:
CompilationException

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

accept

public <E> E accept(Visitor<E> visitor)