forge.transform
Class ExpressionDefaulter<T>

java.lang.Object
  extended by forge.program.ExpressionVisitor<T>
      extended by forge.transform.ExpressionDefaulter<T>

public abstract class ExpressionDefaulter<T>
extends ExpressionVisitor<T>

Visitor where each visit method calls the default method.

Author:
Greg Dennis (gdennis@mit.edu)

Constructor Summary
ExpressionDefaulter()
           
 
Method Summary
protected abstract  T defaultVisit(ForgeExpression expr)
           
protected  T visit(BinaryExpression expr)
          Visits a BinaryExpression.
protected  T visit(ConditionalExpression expr)
          Visits a ConditionalExpression.
protected  T visit(ForgeLiteral expr)
          Visits a ForgeConstant.
protected  T visit(ForgeType expr)
          Visits a ForgeType.
protected  T visit(ForgeVariable expr)
          Visits a ForgeVariable.
protected  T visit(OldExpression expr)
          Visits an OldExpression.
protected  T visit(ProjectionExpression expr)
          Visits a ProjectionExpression.
protected  T visit(QuantifyExpression expr)
          Visits a QuantifyExpression.
protected  T visit(UnaryExpression expr)
          Visits a UnaryExpression.
 
Methods inherited from class forge.program.ExpressionVisitor
getCache, isCached, putCache
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExpressionDefaulter

public ExpressionDefaulter()
Method Detail

defaultVisit

protected abstract T defaultVisit(ForgeExpression expr)

visit

protected T visit(ForgeType expr)
Description copied from class: ExpressionVisitor
Visits a ForgeType.

Specified by:
visit in class ExpressionVisitor<T>

visit

protected T visit(ForgeLiteral expr)
Description copied from class: ExpressionVisitor
Visits a ForgeConstant.

Specified by:
visit in class ExpressionVisitor<T>

visit

protected T visit(ForgeVariable expr)
Description copied from class: ExpressionVisitor
Visits a ForgeVariable.

Specified by:
visit in class ExpressionVisitor<T>

visit

protected T visit(UnaryExpression expr)
Description copied from class: ExpressionVisitor
Visits a UnaryExpression.

Specified by:
visit in class ExpressionVisitor<T>

visit

protected T visit(BinaryExpression expr)
Description copied from class: ExpressionVisitor
Visits a BinaryExpression.

Specified by:
visit in class ExpressionVisitor<T>

visit

protected T visit(ConditionalExpression expr)
Description copied from class: ExpressionVisitor
Visits a ConditionalExpression.

Specified by:
visit in class ExpressionVisitor<T>

visit

protected T visit(ProjectionExpression expr)
Description copied from class: ExpressionVisitor
Visits a ProjectionExpression.

Specified by:
visit in class ExpressionVisitor<T>

visit

protected T visit(QuantifyExpression expr)
Description copied from class: ExpressionVisitor
Visits a QuantifyExpression.

Specified by:
visit in class ExpressionVisitor<T>

visit

protected T visit(OldExpression expr)
Description copied from class: ExpressionVisitor
Visits an OldExpression.

Specified by:
visit in class ExpressionVisitor<T>