gov.llnl.babel.visitor
Class SymbolTablePrimer
public class SymbolTablePrimer
This AST visitor does the first pass on initializing the older SymbolTable.
Empty Classes, Interfaces, (and eventually structs) will be added.
Enums are also added, but since they make no reference to other types they
are entered in their entirety here.
A second pass is needed later to add all the details about inheritance,
methods, arguements, etc. The reason for the two separate passes is to
make the type resolution more permissive than the original single-pass
model of the original parser and the existing SymbolTable.
visitArgument , visitArgumentList , visitArrayType , visitAssertion , visitAttribute , visitAttributeList , visitBinaryExpr , visitBooleanLiteral , visitCharacterLiteral , visitClassType , visitDComplexLiteral , visitDocComment , visitDoubleLiteral , visitEnsures , visitEnumItem , visitEnumeration , visitExtents , visitFComplexLiteral , visitFixedType , visitFloatLiteral , visitFromClause , visitFuncExpr , visitImportClause , visitIntLiteral , visitInterfaceType , visitInvariants , visitMethod , visitMethodList , visitName , visitNode , visitPackage , visitRArrayType , visitRequireClause , visitRequires , visitSIDLFile , visitScopedID , visitScopedIDList , visitSplicerBlock , visitSplicerImpl , visitSplicerImplList , visitSplicerList , visitStringLiteral , visitStructItem , visitStructType , visitThrowsList , visitUnaryExpr |
SymbolTablePrimer
public SymbolTablePrimer(MsgList msgs,
Context context)