Puma Reference Manual Puma: Puma::CT_LinkageSpec Class Reference



Puma::CT_LinkageSpec Class Reference

Tree node representing a list of declaration with a specific linkage. More...

#include <Puma/CTree.h>

Inheritance diagram for Puma::CT_LinkageSpec:
Inheritance graph

List of all members.

Public Member Functions

 CT_LinkageSpec (CTree *dss, CTree *o, CTree *d, CTree *c)
 Constructor.
const char * NodeName () const
 Get the name of the node.
int Sons () const
 Get the number of sons.
CTreeSon (int n) const
 Get the n-th son.
CT_DeclSpecSeqLinkageSpecifiers () const
 Get the linkage specifier list.
CTreeDecls () const
 Get the list declarations.
bool isList () const
 Check if there is more than one enclosed declaration.
void ReplaceSon (CTree *old_son, CTree *new_son)
 Replace a son.

Static Public Member Functions

static const char * NodeId ()
 Get the identifier for this node type.

Detailed Description

Tree node representing a list of declaration with a specific linkage.


Constructor & Destructor Documentation

Puma::CT_LinkageSpec::CT_LinkageSpec ( CTree dss,
CTree o,
CTree d,
CTree c 
) [inline]

Constructor.

Parameters:
dssThe linkage specifiers, e.g. extern and "C".
oLeft parenthesis around the declaration list.
dThe list of declarations.
cRight parenthesis around the declaration list.

Member Function Documentation

CTree* Puma::CT_LinkageSpec::Decls ( ) const [inline]

Get the list declarations.

bool Puma::CT_LinkageSpec::isList ( ) const [inline]

Check if there is more than one enclosed declaration.

In this case the node returned by Decls() is a CT_DeclList node.

CT_DeclSpecSeq* Puma::CT_LinkageSpec::LinkageSpecifiers ( ) const [inline]

Get the linkage specifier list.

static const char* Puma::CT_LinkageSpec::NodeId ( ) [static]

Get the identifier for this node type.

Can be compared with NodeName().

const char* Puma::CT_LinkageSpec::NodeName ( ) const [inline, virtual]

Get the name of the node.

Can be compared with NodeId().

Implements Puma::CTree.

void Puma::CT_LinkageSpec::ReplaceSon ( CTree old_son,
CTree new_son 
) [inline, virtual]

Replace a son.

Parameters:
old_sonThe son to replace.
new_sonThe new son.

Reimplemented from Puma::CTree.

CTree* Puma::CT_LinkageSpec::Son ( int  n) const [inline, virtual]

Get the n-th son.

Parameters:
nThe index of the son.
Returns:
The n-th son or NULL.

Reimplemented from Puma::CTree.

int Puma::CT_LinkageSpec::Sons ( ) const [inline, virtual]

Get the number of sons.

Implements Puma::CTree.