Puma::CT_PrimDeclSpec Class Reference

#include <Puma/CTree.h>

Inheritance diagram for Puma::CT_PrimDeclSpec:

Inheritance graph

List of all members.


Detailed Description

Tree node representing a primitive declaration specifier.

Public Types

enum  Type {
  PDS_FRIEND, PDS_TYPEDEF, PDS_AUTO, PDS_REGISTER,
  PDS_STATIC, PDS_EXTERN, PDS_MUTABLE, PDS_INLINE,
  PDS_VIRTUAL, PDS_EXPLICIT, PDS_CONST, PDS_VOLATILE,
  PDS_RESTRICT, PDS_CHAR, PDS_WCHAR_T, PDS_BOOL,
  PDS_SHORT, PDS_INT, PDS_LONG, PDS_SIGNED,
  PDS_UNSIGNED, PDS_FLOAT, PDS_DOUBLE, PDS_VOID,
  PDS_UNKNOWN_T, PDS_CDECL, PDS_STDCALL, PDS_FASTCALL,
  PDS_INT64, PDS_UNKNOWN, PDS_NUM
}

Public Member Functions

 CT_PrimDeclSpec (CT_Token *t)
 CT_PrimDeclSpec (Type t)
const char * NodeName () const
int Sons () const
CTreeSon (int n) const
const char * SpecText () const
Type SpecType () const
void ReplaceSon (CTree *old_son, CTree *new_son)

Static Public Member Functions

static const char * NodeId ()

Static Public Attributes

static const int NumTypes = PDS_NUM

Member Enumeration Documentation

Declaration specifier types.

Enumerator:
PDS_FRIEND 
PDS_TYPEDEF  friend
PDS_AUTO  typedef
PDS_REGISTER  auto
PDS_STATIC  register
PDS_EXTERN  static
PDS_MUTABLE  extern
PDS_INLINE  mutable
PDS_VIRTUAL  inline
PDS_EXPLICIT  virtual
PDS_CONST  explicit
PDS_VOLATILE  const
PDS_RESTRICT  volatile
PDS_CHAR  restrict
PDS_WCHAR_T  char
PDS_BOOL  wchar_t
PDS_SHORT  bool
PDS_INT  short
PDS_LONG  int
PDS_SIGNED  long
PDS_UNSIGNED  signed
PDS_FLOAT  unsigned
PDS_DOUBLE  float
PDS_VOID  double
PDS_UNKNOWN_T  void
PDS_CDECL  unknown_t
PDS_STDCALL  __cdecl
PDS_FASTCALL  __stdcall
PDS_INT64  __fastcall
PDS_UNKNOWN  __int64
PDS_NUM  Unknown declaration specifier. Number of declaration specifier types.


Constructor & Destructor Documentation

Puma::CT_PrimDeclSpec::CT_PrimDeclSpec ( CT_Token t  )  [inline]

Constructor.

Parameters:
t The token containing the declaration specifier.

Puma::CT_PrimDeclSpec::CT_PrimDeclSpec ( Type  t  )  [inline]

Constructor.

Parameters:
t The declaration specifier type.


Member Function Documentation

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

Get the identifier for this node type. Can be compared with NodeName().

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

Get the name of the node. Can be compared with NodeId().

Implements Puma::CTree.

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

Get the number of sons.

Implements Puma::CTree.

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

Get the n-th son.

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

Reimplemented from Puma::CTree.

const char* Puma::CT_PrimDeclSpec::SpecText (  )  const [inline]

Get the textual representation of the declaration specifier.

Returns:
The string representation or " ".

Type Puma::CT_PrimDeclSpec::SpecType (  )  const [inline]

Get the declaration specifier type.

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

Replace a son.

Parameters:
old_son The son to replace.
new_son The new son.

Reimplemented from Puma::CTree.


Member Data Documentation

const int Puma::CT_PrimDeclSpec::NumTypes = PDS_NUM [static]

Number of declaration specifier types.


Generated on Sat May 10 03:04:01 2008 for Puma by  doxygen 1.5.5