kodkod.ast
Class BinaryExpression

java.lang.Object
  extended by kodkod.ast.Expression
      extended by kodkod.ast.BinaryExpression
All Implemented Interfaces:
Node

public final class BinaryExpression
extends Expression

A relational expression with two children.

Author:
Emina Torlak
invariant:
children = left + right
specfield:
left: Expression
right: Expression
op: Operator

Nested Class Summary
static class BinaryExpression.Operator
          A binary expression operator: union, difference, intersection, override, join, and product.
 
Field Summary
 
Fields inherited from class kodkod.ast.Expression
IDEN, INTS, NONE, UNIV
 
Method Summary
<E,F,D,I> E
accept(ReturnVisitor<E,F,D,I> visitor)
          Accepts the given visitor and returns the result.
 void accept(VoidVisitor visitor)
          Accepts the given visitor.
 int arity()
          Returns the arity of this binary expression.
 Expression left()
          Returns the left child of this.
 BinaryExpression.Operator op()
          Returns the operator of this.
 Expression right()
          Returns the right child of this.
 java.lang.String toString()
          Returns the string representation of this expression.
 
Methods inherited from class kodkod.ast.Expression
apply, apply, apply, closure, compose, compose, count, difference, eq, in, intersection, join, lone, no, one, override, product, project, reflexiveClosure, some, sum, transpose, union
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

arity

public int arity()
Returns the arity of this binary expression.

Specified by:
arity in class Expression
Returns:
this.arity
See Also:
Expression.arity()

left

public Expression left()
Returns the left child of this.

Returns:
this.left

right

public Expression right()
Returns the right child of this.

Returns:
this.right

op

public BinaryExpression.Operator op()
Returns the operator of this.

Returns:
this.op

accept

public <E,F,D,I> E accept(ReturnVisitor<E,F,D,I> visitor)
Accepts the given visitor and returns the result.

Specified by:
accept in interface Node
Specified by:
accept in class Expression
Returns:
the result of being visited by the given visitor
See Also:
Node.accept(kodkod.ast.visitor.ReturnVisitor)

accept

public void accept(VoidVisitor visitor)
Accepts the given visitor.

See Also:
Node.accept(kodkod.ast.visitor.VoidVisitor)

toString

public java.lang.String toString()
Returns the string representation of this expression.

Overrides:
toString in class java.lang.Object
Returns:
string representation of this expression