Puma Reference Manual Puma::CT_GnuCaseStmt Class Reference



Puma::CT_GnuCaseStmt Class Reference

Tree node representing a label statement with case range. More...

#include <Puma/GnuCTree.h>

Inheritance diagram for Puma::CT_GnuCaseStmt:
Inheritance graph

List of all members.

Public Member Functions

 CT_GnuCaseStmt (CTree *kw, CTree *expr1, CTree *dots, CTree *expr2, CTree *c, CTree *stmt)
 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_StatementStatement () const
 Get the statement.
CT_SimpleNameExpr1 () const
 Get the first const expression.
CT_SimpleNameExpr2 () const
 Get the second const expression.
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.

Additional Inherited Members

- Protected Member Functions inherited from Puma::CT_Statement
 CT_Statement ()
 Constructor.
virtual CT_StatementIsStatement ()
 Get this.
- Protected Member Functions inherited from Puma::CTree
CTreeSon (CTree *const *sons, int len, int n) const
 Get the n-th son from given sons array.
int Sons (CTree *const *sons, int len) const
 Get the number of sons in the given sons array.
void ReplaceSon (CTree **sons, int len, CTree *old_son, CTree *new_son)
 Replace a son.
void ReplaceSon (CTree *&son, CTree *old_son, CTree *new_son)
 Replace a son if it equals the given son.
void AddSon (CTree *&son, CTree *new_son)
 Add a new son.
void SetParent (const CTree *parent)
 Set the parent tree node.
void SetParent (CTree *node, const CTree *parent)
 Set the parent tree node of the given tree node.
 CTree ()
 Default constructor.

Detailed Description

Tree node representing a label statement with case range.

Example:

case 10 ... 20: a++;

Constructor & Destructor Documentation

Puma::CT_GnuCaseStmt::CT_GnuCaseStmt ( CTree kw,
CTree expr1,
CTree dots,
CTree expr2,
CTree c,
CTree stmt 
)
inline

Constructor.

Parameters:
kwThe keyword 'case'.
expr1The constant expression specifying the first case value.
dotsThe ellipsis token '...'
expr2The constant expression specifying the second case value.
cThe colon.
stmtThe statement of the case.

Member Function Documentation

CT_SimpleName* Puma::CT_GnuCaseStmt::Expr1 ( ) const
inline

Get the first const expression.

CT_SimpleName* Puma::CT_GnuCaseStmt::Expr2 ( ) const
inline

Get the second const expression.

static const char* Puma::CT_GnuCaseStmt::NodeId ( )
static

Get the identifier for this node type.

Can be compared with NodeName().

const char* Puma::CT_GnuCaseStmt::NodeName ( ) const
inlinevirtual

Get the name of the node.

Can be compared with NodeId().

Implements Puma::CTree.

void Puma::CT_GnuCaseStmt::ReplaceSon ( CTree old_son,
CTree new_son 
)
inlinevirtual

Replace a son.

Parameters:
old_sonThe son to replace.
new_sonThe new son.

Reimplemented from Puma::CTree.

CTree* Puma::CT_GnuCaseStmt::Son ( int  n) const
inlinevirtual

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_GnuCaseStmt::Sons ( ) const
inlinevirtual

Get the number of sons.

Implements Puma::CTree.

CT_Statement* Puma::CT_GnuCaseStmt::Statement ( ) const
inline

Get the statement.




Puma Reference Manual. Created on Sun Jul 1 2012.