Logo Search packages:      
Sourcecode: fauhdlc version File versions

ast::ResolveSymbols Class Reference

#include <ResolveSymbols.hpp>

Inheritance diagram for ast::ResolveSymbols:

ast::TopDownVisitor ast::Visitor

List of all members.


Detailed Description

class used to late resolve symbols

This class can be used to set the symbol candidates for name based nodes, in case these couldn't get looked up yet during scanning. The most prominent example is any association list.

Definition at line 22 of file ResolveSymbols.hpp.


Public Member Functions

 ResolveSymbols (SymbolTable &symbolTable)
 c'tor
virtual void visit (AttributeSpecification &node)
virtual void visit (AttributeDeclaration &node)
virtual void visit (TypeConversion &node)
virtual void visit (LibraryList &node)
virtual void visit (Library &node)
virtual void visit (SubtypeIndication &node)
virtual void visit (EnumerationElement &node)
virtual void visit (Aggregate &node)
virtual void visit (RecordTypeElement &node)
virtual void visit (RecordType &node)
virtual void visit (UnconstrainedArrayType &node)
virtual void visit (RangeConstraintType &node)
virtual void visit (PhysicalTypeUnit &node)
virtual void visit (PhysicalType &node)
virtual void visit (EnumerationType &node)
virtual void visit (CondalSigAssign &node)
virtual void visit (SubprogBody &node)
virtual void visit (Process &node)
virtual void visit (PackageBody &node)
virtual void visit (Package &node)
virtual void visit (ProcedureDeclaration &node)
virtual void visit (FunctionDeclaration &node)
virtual void visit (Architecture &node)
virtual void visit (Others &node)
virtual void visit (CaseAlternative &node)
virtual void visit (CaseStat &node)
virtual void visit (DiscreteRange &node)
virtual void visit (VarDeclaration &node)
virtual void visit (AssertStat &node)
virtual void visit (ProcCallStat &node)
virtual void visit (ReturnStat &node)
virtual void visit (WaveFormElem &node)
virtual void visit (SigAssignStat &node)
virtual void visit (ExitStat &node)
virtual void visit (WaitStat &node)
virtual void visit (VarAssignStat &node)
virtual void visit (NextStat &node)
virtual void visit (WhileLoopStat &node)
virtual void visit (ForLoopStat &node)
virtual void visit (NullStat &node)
virtual void visit (IfStat &node)
virtual void visit (ConstantDeclaration &node)
virtual void visit (SignalDeclaration &node)
virtual void visit (Entity &node)
virtual void visit (ConstArray &node)
virtual void visit (ConstReal &node)
virtual void visit (ConstInteger &node)
virtual void visit (ElementAssociation &node)
virtual void visit (CompInstStat &node)
virtual void visit (AssociationElement &node)
virtual void visit (FunctionCall &node)
virtual void visit (Subscript &node)
virtual void visit (Slice &node)
virtual void visit (AttributeName &node)
virtual void visit (SelectedName &node)
virtual void visit (TemporaryName &node)
virtual void visit (SimpleName &node)

Protected Member Functions

template<typename T>
void listTraverse (T &l, bool &deleteFlag)
 traverse a list of AST nodes, eventually deleting a node.
template<typename T>
void listTraverse (T l)
 traverse a list of AST nodes.
virtual void process (AttributableDeclaration &node)
 Process a AttributableDeclaration.
virtual void process (Name &node)
 Process a generic Name.
virtual void process (PrefixedName &node)
 Process a generic PrefixedName.
virtual void process (TypeDeclaration &node)
 Process a generic TypeDeclaration.
virtual void process (LibUnit &node)
 Process a generic LibUnit.
virtual void process (Callable &node)
 Process a generic Callable.
virtual void process (ConditionedStat &node)
 Process a generic ConditionedStat.
virtual void process (LoopStat &node)
 Process a generic LoopStat.
virtual void process (SeqStat &node)
 Process a generic SeqStat.
virtual void process (SymbolDeclaration &node)
 Process a generic SymbolDeclaration.
virtual void process (ValDeclaration &node)
 Process a generic ValDeclaration.

Static Protected Attributes

static int visits = 0

Private Types

typedef std::list< Symbol * > symListT
 typedef for symbol lists.

Private Member Functions

virtual void process (AstNode &node)
 process a generic AstNode (must not happen).
virtual void process (Expression &node)
 process a generic expression

Private Attributes

symListTprefixCands
 prefix candidate symbols.
SymbolTablesymTab
 SymbolTable instance.

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index