kodkod.ast
Class Comprehension
java.lang.Object
kodkod.ast.Expression
kodkod.ast.Comprehension
- All Implemented Interfaces:
- Node
public final class Comprehension
- extends Expression
A comprehension expression, e.g. { a: A, b: B | a.r = b }
- Author:
- Emina Torlak
- invariant:
arity = sum(declarations.declarations().arity) |
children = declarations + formula |
- specfield:
declarations: Declarations |
formula: Formula |
Method Summary |
|
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 comprehension expression, which is the sum
of the arities of declared variables |
Decls |
declarations()
|
Formula |
formula()
|
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 |
formula
public Formula formula()
- Returns:
- this.formula
declarations
public Decls declarations()
- Returns:
- this.declarations
arity
public int arity()
- Returns the arity of this comprehension expression, which is the sum
of the arities of declared variables
- Specified by:
arity
in class Expression
- Returns:
- sum(this.declarations.declarations().arity)
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