Package forge.program

Interface Summary
ForgeExpression A Forge expression.
ForgeExpression.Leaf Domains, variables, and literals -- expressions that have a name.
ForgeExpression.Modifiable Variables and instance domains -- leafs that may be modified.
ForgeType The type of a Forge expression.
ForgeType.Tuple A type that is a tuple of classes.
ForgeType.Unary A type that is a set of classes.
LocalDecls Interface to an ordered set of local variables
ProgramElement Belongs to a program.
 

Class Summary
BinaryExpression An expression composed of a binary operator and two subexpressions.
BooleanDomain Class of booleans.
BooleanLiteral A constant boolean expression: true or false.
ConditionalExpression A conditional "if" expression
ExpressionVisitor<T> A visitor to a Forge expression.
ForgeDomain A set of atoms disjoint from all other classes.
ForgeLiteral A singleton constant
ForgeProcedure A procedure in a Forge program.
ForgeProgram Manages the Forge classes, fields, and procedures.
ForgeVariable A global or local Forge variable.
GlobalVariable A relation over Forge classes.
InstanceDomain A class of instance (non-primitive) atoms.
InstanceLiteral An atom in an Atom class.
IntegerDomain Class of integers.
IntegerLiteral A constant integer expression.
LocalDecls.EmptyDecls An empty set of decls.
LocalDecls.MultiDecls A set of one or more local variables.
LocalVariable A Forge local variable.
OldExpression Refers to the old value of a modified variable in an assume statement.
ProjectionExpression An expression for a relational projection over another expression.
QuantifyExpression A quantified formula expression.
UnaryExpression An expression composed of a unary operator and a subexpression.
 

Enum Summary
BinaryExpression.Op  
ForgeDomain.Kind  
QuantifyExpression.Op  
UnaryExpression.Op  
 

Exception Summary
IllegalArityException Thrown when an expression is constructed from illegal arities.