com.veromodo.tempo.sem
Class CollectFormals

java.lang.Object
  extended by com.veromodo.tempo.ast.ASTHVisitor
      extended by com.veromodo.tempo.ast.ASTBVisitor
          extended by com.veromodo.tempo.sem.CollectFormals
All Implemented Interfaces:
ASTIVisitor
Direct Known Subclasses:
CollectFormalsSig, CollectFormalsTask, CollectFormalsTypeFormal

public abstract class CollectFormals
extends ASTBVisitor

Collects a list of formals and generates a tuple type of them.

Author:
carletoncoffrin

Constructor Summary
CollectFormals(Environment e)
           
 
Method Summary
 void applyASTActionFormalConst(ASTActionFormalConst n)
           
 void applyASTActionFormalName(ASTActionFormalName n)
           
 void applyASTActionFormalTypedIdList(ASTActionFormalTypedIdList n)
           
 void applyASTFormal(ASTFormal n)
           
 TypeTuple collect(ASTNode n)
           
 
Methods inherited from class com.veromodo.tempo.ast.ASTBVisitor
applyASTAction, applyASTActionSet, applyASTActualExpr, applyASTActualType, applyASTAssignment, applyASTBackwardSim, applyASTBasicAutomaton, applyASTBinary, applyASTBlock, applyASTCall, applyASTChoose, applyASTComponent, applyASTComponentDef, applyASTComponentInst, applyASTCompositeAutomaton, applyASTCond, applyASTDeclFun, applyASTDeclLocals, applyASTDeclScheduleLocal, applyASTDeclVar, applyASTDeclVocabulary, applyASTDefType, applyASTDerefArray, applyASTDerefField, applyASTEffect, applyASTExpr, applyASTExprId, applyASTExprLiteral, applyASTFireInput, applyASTFireInternal, applyASTFireOutput, applyASTFollow, applyASTForClause, applyASTForLoop, applyASTForwardSim, applyASTIdentifier, applyASTIfThen, applyASTIfThenElse, applyASTInvariant, applyASTList, applyASTLiteral, applyASTMSGInvokeInput, applyASTMSGInvokeInternal, applyASTMSGInvokeOutput, applyASTNDRChoose, applyASTNDRFire, applyASTNDRFireInput, applyASTNDRFireInternal, applyASTNDRFireOutput, applyASTNDRFollow, applyASTNDRIfThen, applyASTNDRIfThenElse, applyASTNDRWhile, applyASTNDRYield, applyASTNode, applyASTNotation, applyASTNotationFun, applyASTNotationInfix, applyASTNotationInfixRight, applyASTNotationITE, applyASTNotationMixBracket, applyASTNotationMixCBrace, applyASTNotationPrefix, applyASTNotationSuffix, applyASTOperator, applyASTOperatorSignature, applyASTProofFire, applyASTProofFollow, applyASTProofIfThen, applyASTProofIfThenElse, applyASTProofUsing, applyASTProofWhile, applyASTQExist, applyASTQForall, applyASTRoot, applyASTRootDeclFuns, applyASTRootDeclTypes, applyASTRootDeclVocab, applyASTRootVocabRef, applyASTSchedule, applyASTSetof, applyASTSimProof, applyASTSimProofAction, applyASTStartEntry, applyASTState, applyASTTask, applyASTTrajectory, applyASTTrajEntry, applyASTTrajRef, applyASTTransEntry, applyASTTransition, applyASTTupleConstructor, applyASTTypeAlias, applyASTTypeEnum, applyASTTypeFunction, applyASTTypeGeneric, applyASTTypeId, applyASTTypeParameter, applyASTTypeSelector, applyASTTypeTuple, applyASTTypeUnion, applyASTUnary, applyASTVocabRef, applyASTWhile, applyDeclFields
 
Methods inherited from class com.veromodo.tempo.ast.ASTHVisitor
applyASTActionFormal, applyASTActual, applyASTAdd, applyASTAnd, applyASTAutomaton, applyASTBinOp, applyASTDecl, applyASTDeclFields, applyASTDiv, applyASTEqual, applyASTEquiv, applyASTFire, applyASTFloatLiteral, applyASTGEqual, applyASTGreater, applyASTIdOrNum, applyASTImply, applyASTIntLiteral, applyASTLEqual, applyASTLess, applyASTListActionFormal, applyASTListActionSet, applyASTListActual, applyASTListComponent, applyASTListDeclFuns, applyASTListDeclLocals, applyASTListDeclScheduleLocal, applyASTListDefType, applyASTListFields, applyASTListFormal, applyASTListFormula, applyASTListId, applyASTListIdOrNum, applyASTListName, applyASTListOperatorSignature, applyASTListProofUsing, applyASTListRoot, applyASTListSignature, applyASTListSimProofEntry, applyASTListStartEntry, applyASTListState, applyASTListStatement, applyASTListTask, applyASTListTrajectories, applyASTListTrajRef, applyASTListTransition, applyASTListType, applyASTListVocabRef, applyASTMixCBraceOp, applyASTMSGInvoke, applyASTMul, applyASTNeg, applyASTNEqual, applyASTNot, applyASTNotationMixFix, applyASTOr, applyASTPost, applyASTPow, applyASTProofStatement, applyASTQuantified, applyASTSignature, applyASTSimProofEntry, applyASTSimulation, applyASTStatement, applyASTSub, applyASTType
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CollectFormals

public CollectFormals(Environment e)
Method Detail

collect

public TypeTuple collect(ASTNode n)

applyASTFormal

public void applyASTFormal(ASTFormal n)
Specified by:
applyASTFormal in interface ASTIVisitor
Overrides:
applyASTFormal in class ASTBVisitor

applyASTActionFormalTypedIdList

public void applyASTActionFormalTypedIdList(ASTActionFormalTypedIdList n)
Specified by:
applyASTActionFormalTypedIdList in interface ASTIVisitor
Overrides:
applyASTActionFormalTypedIdList in class ASTBVisitor

applyASTActionFormalConst

public void applyASTActionFormalConst(ASTActionFormalConst n)
Specified by:
applyASTActionFormalConst in interface ASTIVisitor
Overrides:
applyASTActionFormalConst in class ASTBVisitor

applyASTActionFormalName

public void applyASTActionFormalName(ASTActionFormalName n)
Specified by:
applyASTActionFormalName in interface ASTIVisitor
Overrides:
applyASTActionFormalName in class ASTBVisitor