orc.ast.extended.expression
Class Dot

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

public class Dot
extends Expression

A dot expression (e.g "C.put(4)"). This is interpreted as a chain of calls: C(`put`)(4) where `put` is a special Field object.

Author:
dkitchin

Nested Class Summary
 
Nested classes/interfaces inherited from class orc.ast.extended.expression.Expression
Expression.Arg
 
Field Summary
 java.lang.String field
           
 Expression target
           
 
Constructor Summary
Dot(Expression target, java.lang.String field)
           
 
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

target

public Expression target

field

public java.lang.String field
Constructor Detail

Dot

public Dot(Expression target,
           java.lang.String field)
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)