com.veromodo.tempo.sem
Class FormalFlattener

java.lang.Object
  extended by com.veromodo.tempo.ast.ASTHVisitor
      extended by com.veromodo.tempo.ast.ASTBVisitor
          extended by com.veromodo.tempo.sem.FormalFlattener
All Implemented Interfaces:
ASTIVisitor
Direct Known Subclasses:
CheckActionFormals

public class FormalFlattener
extends ASTBVisitor

Used by TransitionAnalyze Makes a vector pointing to all the formals in a formal list. And calcuates the possible types of the expressions

Author:
carletoncoffrin

Constructor Summary
FormalFlattener(Environment e)
           
 
Method Summary
 void applyASTActionFormalConst(ASTActionFormalConst n)
           
 void applyASTActionFormalName(ASTActionFormalName n)
           
 void applyASTActionFormalTypedIdList(ASTActionFormalTypedIdList n)
           
 java.util.Vector<ASTExpr> 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, applyASTFormal, 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

FormalFlattener

public FormalFlattener(Environment e)
Method Detail

collect

public java.util.Vector<ASTExpr> collect(ASTNode n)

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