Puma Reference Manual Puma::CSemVisitor Class Reference



Puma::CSemVisitor Class Reference

#include <CSemVisitor.h>

Inheritance diagram for Puma::CSemVisitor:
Inheritance graph

Public Member Functions

 CSemVisitor (ErrorSink &, CStructure *=(CStructure *) 0)
 
void run (CTree *, CStructure *=(CStructure *) 0)
 
void configure (Config &)
 
CTypeInfo * resolveExpr (CTree *, CTree *) const
 
void resolveInit (CObjectInfo *info, CTree *, CTree *) const
 

Protected Member Functions

void pre_visit (CTree *)
 Apply actions before the given node is visited. More...
 
void post_visit (CTree *)
 Apply actions after the given node is visited. More...
 
void pre_action (CT_Program *)
 
void pre_action (CT_ArgDeclList *)
 
void pre_action (CT_ArgNameList *)
 
void pre_action (CT_ArgDeclSeq *)
 
void pre_action (CT_MembList *)
 
void pre_action (CT_CmpdStmt *)
 
void pre_action (CT_IfStmt *)
 
void pre_action (CT_IfElseStmt *)
 
void pre_action (CT_SwitchStmt *)
 
void pre_action (CT_ForStmt *)
 
void pre_action (CT_WhileStmt *)
 
void pre_action (CT_DoStmt *)
 
void pre_action (CT_ExprStmt *)
 
void pre_action (CT_CaseStmt *)
 
void pre_action (CT_GotoStmt *)
 
void pre_action (CT_ReturnStmt *)
 
void pre_action (CT_InitDeclarator *)
 
void pre_action (CT_ArrayDeclarator *)
 
void pre_action (CT_BitFieldDeclarator *)
 
void pre_action (CT_ExprList *)
 
void pre_action (CT_CmpdLiteral *)
 
void post_action (CT_Program *)
 
void post_action (CT_ArgDeclList *)
 
void post_action (CT_ArgNameList *)
 
void post_action (CT_ArgDeclSeq *)
 
void post_action (CT_MembList *)
 
void post_action (CT_CmpdStmt *)
 
void post_action (CT_IfStmt *)
 
void post_action (CT_IfElseStmt *)
 
void post_action (CT_SwitchStmt *)
 
void post_action (CT_ForStmt *)
 
void post_action (CT_WhileStmt *)
 
CT_SimpleName * findName (CTree *) const
 

Protected Attributes

CStructure * current_scope
 
ErrorSink & err
 

Constructor & Destructor Documentation

Puma::CSemVisitor::CSemVisitor ( ErrorSink &  ,
CStructure *  = (CStructure *) 0 
)

Member Function Documentation

void Puma::CSemVisitor::configure ( Config &  )
inline
CT_SimpleName* Puma::CSemVisitor::findName ( CTree *  ) const
protected
void Puma::CSemVisitor::post_action ( CT_Program *  )
protected
void Puma::CSemVisitor::post_action ( CT_ArgDeclList *  )
protected
void Puma::CSemVisitor::post_action ( CT_ArgNameList *  )
protected
void Puma::CSemVisitor::post_action ( CT_ArgDeclSeq *  )
protected
void Puma::CSemVisitor::post_action ( CT_MembList *  )
protected
void Puma::CSemVisitor::post_action ( CT_CmpdStmt *  )
protected
void Puma::CSemVisitor::post_action ( CT_IfStmt *  )
protected
void Puma::CSemVisitor::post_action ( CT_IfElseStmt *  )
protected
void Puma::CSemVisitor::post_action ( CT_SwitchStmt *  )
protected
void Puma::CSemVisitor::post_action ( CT_ForStmt *  )
protected
void Puma::CSemVisitor::post_action ( CT_WhileStmt *  )
protected
void Puma::CSemVisitor::post_visit ( CTree *  node)
protectedvirtual

Apply actions after the given node is visited.

To be implemented by derived visitors.

Parameters
nodeThe node to visit.

Reimplemented from Puma::CVisitor.

void Puma::CSemVisitor::pre_action ( CT_Program *  )
protected
void Puma::CSemVisitor::pre_action ( CT_ArgDeclList *  )
protected
void Puma::CSemVisitor::pre_action ( CT_ArgNameList *  )
protected
void Puma::CSemVisitor::pre_action ( CT_ArgDeclSeq *  )
protected
void Puma::CSemVisitor::pre_action ( CT_MembList *  )
protected
void Puma::CSemVisitor::pre_action ( CT_CmpdStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_IfStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_IfElseStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_SwitchStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_ForStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_WhileStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_DoStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_ExprStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_CaseStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_GotoStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_ReturnStmt *  )
protected
void Puma::CSemVisitor::pre_action ( CT_InitDeclarator *  )
protected
void Puma::CSemVisitor::pre_action ( CT_ArrayDeclarator *  )
protected
void Puma::CSemVisitor::pre_action ( CT_BitFieldDeclarator *  )
protected
void Puma::CSemVisitor::pre_action ( CT_ExprList *  )
protected
void Puma::CSemVisitor::pre_action ( CT_CmpdLiteral *  )
protected
void Puma::CSemVisitor::pre_visit ( CTree *  node)
protectedvirtual

Apply actions before the given node is visited.

To be implemented by derived visitors.

Parameters
nodeThe node to visit.

Reimplemented from Puma::CVisitor.

CTypeInfo* Puma::CSemVisitor::resolveExpr ( CTree *  ,
CTree *   
) const
void Puma::CSemVisitor::resolveInit ( CObjectInfo *  info,
CTree *  ,
CTree *   
) const
void Puma::CSemVisitor::run ( CTree *  ,
CStructure *  = (CStructure *) 0 
)

Member Data Documentation

CStructure* Puma::CSemVisitor::current_scope
protected
ErrorSink& Puma::CSemVisitor::err
protected



Puma Reference Manual. Created on Fri Aug 28 2015.