PPL Logo

xi::AstChildren< Child > Class Template Reference

#include <xi-AstNode.h>

Inheritance diagram for xi::AstChildren< Child >:

Inheritance graph
[legend]
Collaboration diagram for xi::AstChildren< Child >:

Collaboration graph
[legend]

Public Member Functions

 AstChildren (int line_, Child *c, AstChildren *cs)
template<typename T>
 AstChildren (std::list< T * > &l)
void push_back (Child *c)
void preprocess ()
void check ()
void print (XStr &str)
void printChareNames ()
void outputClosuresDecl (XStr &str)
void outputClosuresDef (XStr &str)
void genClosureEntryDecls (XStr &str)
void genClosureEntryDefs (XStr &str)
void genDecls (XStr &str)
void genDefs (XStr &str)
void genReg (XStr &str)
void genGlobalCode (XStr scope, XStr &decls, XStr &defs)
bool isTramTarget ()
void genTramTypes ()
void genTramRegs (XStr &str)
void genTramPups (XStr &scope, XStr &decls, XStr &defs)
int genAccels_spe_c_funcBodies (XStr &str)
void genAccels_spe_c_regFuncs (XStr &str)
void genAccels_spe_c_callInits (XStr &str)
void genAccels_spe_h_includes (XStr &str)
void genAccels_spe_h_fiCountDefs (XStr &str)
void genAccels_ppe_c_regFuncs (XStr &str)
template<typename T>
void recurse (T arg, void(Child::*fn)(T))
void recursev (void(Child::*fn)())

Protected Attributes

std::list< Child * > children

Detailed Description

template<typename Child>
class xi::AstChildren< Child >

Definition at line 53 of file xi-AstNode.h.


Constructor & Destructor Documentation

template<typename Child>
xi::AstChildren< Child >::AstChildren ( int  line_,
Child *  c,
AstChildren< Child > *  cs 
) [inline]

Definition at line 58 of file xi-AstNode.h.

template<typename Child>
template<typename T>
xi::AstChildren< Child >::AstChildren ( std::list< T * > &  l  )  [inline, explicit]

Definition at line 64 of file xi-AstNode.h.


Member Function Documentation

template<typename Child>
void xi::AstChildren< Child >::push_back ( Child *  c  )  [inline]

Definition at line 237 of file xi-AstNode.h.

References xi::AstChildren< Child >::children.

template<typename Child>
void xi::AstChildren< Child >::preprocess (  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 247 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElem().

Referenced by xi::Module::preprocess(), and processAst().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::check ( void   )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 252 of file xi-AstNode.h.

References check(), xi::AstChildren< Child >::children, and xi::details::perElem().

Referenced by xi::Module::check(), and processAst().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::print ( XStr str  )  [inline, virtual]

Implements xi::Printable.

Reimplemented in xi::Scope.

Definition at line 242 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, xi::details::perElemGen(), and print().

Referenced by xi::Module::print().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::printChareNames (  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 313 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElem().

Referenced by xi::Module::printChareNames(), and processAst().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::outputClosuresDecl ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Reimplemented in xi::Scope.

Definition at line 272 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, xi::details::newLine(), and xi::details::perElemGen().

Referenced by xi::Module::generate().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::outputClosuresDef ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Reimplemented in xi::Scope.

Definition at line 277 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, xi::details::newLine(), and xi::details::perElemGen().

Referenced by xi::Module::generate().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genClosureEntryDecls ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 262 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, xi::details::newLine(), and xi::details::perElemGen().

Here is the call graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genClosureEntryDefs ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 267 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, xi::details::newLine(), and xi::details::perElemGen().

Here is the call graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genDecls ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Reimplemented in xi::Scope.

Definition at line 257 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, xi::details::newLine(), and xi::details::perElemGen().

Referenced by xi::Module::genDecls(), and xi::Module::generate().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genDefs ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Reimplemented in xi::Scope.

Definition at line 282 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, xi::details::newLine(), and xi::details::perElemGen().

Referenced by xi::Module::genDefs(), and xi::Module::genReg().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genReg ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Reimplemented in xi::Scope.

Definition at line 287 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, xi::details::newLine(), and xi::details::perElemGen().

Referenced by xi::Module::generate().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genGlobalCode ( XStr  scope,
XStr decls,
XStr defs 
) [inline, virtual]

Reimplemented from xi::AstNode.

Reimplemented in xi::Scope.

Definition at line 303 of file xi-AstNode.h.

References xi::AstChildren< Child >::children.

Referenced by xi::Module::generate().

Here is the caller graph for this function:

template<typename Child>
bool xi::AstChildren< Child >::isTramTarget (  )  [inline]

Definition at line 318 of file xi-AstNode.h.

References xi::AstChildren< Child >::children.

Referenced by xi::Module::isTramTarget().

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genTramTypes (  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 327 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElem().

Here is the call graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genTramRegs ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 332 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElemGen().

Here is the call graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genTramPups ( XStr scope,
XStr decls,
XStr defs 
) [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 337 of file xi-AstNode.h.

References xi::AstChildren< Child >::children.

template<typename Child>
int xi::AstChildren< Child >::genAccels_spe_c_funcBodies ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 347 of file xi-AstNode.h.

References xi::AstChildren< Child >::children.

Referenced by xi::Module::genAccels_spe_c_funcBodies().

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genAccels_spe_c_regFuncs ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 359 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElemGen().

Referenced by xi::Module::genAccels_spe_c_regFuncs().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genAccels_spe_c_callInits ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 364 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElemGen().

Referenced by xi::Module::genAccels_spe_c_callInits().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genAccels_spe_h_includes ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 369 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElemGen().

Referenced by xi::Module::genAccels_spe_h_includes().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genAccels_spe_h_fiCountDefs ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 374 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElemGen().

Referenced by xi::Module::genAccels_spe_h_fiCountDefs().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::genAccels_ppe_c_regFuncs ( XStr str  )  [inline, virtual]

Reimplemented from xi::AstNode.

Definition at line 379 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElemGen().

Referenced by xi::Module::genAccels_ppe_c_regFuncs().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
template<typename T>
void xi::AstChildren< Child >::recurse ( arg,
void(Child::*)(T)  fn 
) [inline]

Definition at line 293 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElemGen().

Referenced by xi::Module::Module(), and processAst().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Child>
void xi::AstChildren< Child >::recursev ( void(Child::*)()  fn  )  [inline]

Definition at line 298 of file xi-AstNode.h.

References xi::AstChildren< Child >::children, and xi::details::perElem().

Referenced by main(), and processAst().

Here is the call graph for this function:

Here is the caller graph for this function:


Field Documentation

template<typename Child>
std::list<Child*> xi::AstChildren< Child >::children [protected]


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

Generated on Mon Sep 21 08:34:52 2020 for Charm++ by  doxygen 1.5.5