comma::EnumDeclStencil Class Reference

A stencil to hold enumeration declaration info. More...

#include <Stencil.h>

Inheritance diagram for comma::EnumDeclStencil:
Inheritance graph
[legend]
Collaboration diagram for comma::EnumDeclStencil:
Collaboration graph
[legend]

List of all members.

Public Types

typedef std::pair
< IdentifierInfo *, Location
IdLocPair
 A std::pair is used to represent enumeration literals.
typedef llvm::SmallVector
< IdLocPair, 8 > 
ElemVec
 Type used to hold the enumeration literal pairs.

Public Member Functions

 EnumDeclStencil ()
void reset ()
 Reset this stencil to its default state.
void addElement (IdentifierInfo *name, Location loc)
unsigned numElements () const
 Returns the number of enumeration literals contained in this stencil.
IdLocPair getElement (unsigned i)
 Returns a pair representing the n'th enumeration literal.
ElemVecgetElements ()
 Returns a direct reference to the literal pair vector.
const ElemVecgetElements () const
void markAsCharacterType ()
 Mark the enumeration as being a character type.
bool isCharacterType () const
 Returns true if this stencil denotes a character enumeration.



typedef ElemVec::iterator elem_iterator
 Iterators over the elements of this enum stencil.
elem_iterator begin_elems ()
 Iterators over the elements of this enum stencil.
elem_iterator end_elems ()
 Iterators over the elements of this enum stencil.

Detailed Description

A stencil to hold enumeration declaration info.

Definition at line 101 of file Stencil.h.


Member Typedef Documentation

typedef ElemVec::iterator comma::EnumDeclStencil::elem_iterator

Iterators over the elements of this enum stencil.

Definition at line 138 of file Stencil.h.

typedef llvm::SmallVector<IdLocPair, 8> comma::EnumDeclStencil::ElemVec

Type used to hold the enumeration literal pairs.

Definition at line 130 of file Stencil.h.

A std::pair is used to represent enumeration literals.

Definition at line 112 of file Stencil.h.


Constructor & Destructor Documentation

comma::EnumDeclStencil::EnumDeclStencil (  )  [inline]

Definition at line 104 of file Stencil.h.


Member Function Documentation

void comma::EnumDeclStencil::addElement ( IdentifierInfo name,
Location  loc 
) [inline]

Adds an enumeration literal to this stencil, given the defining identifier for the literal and its location.

Definition at line 116 of file Stencil.h.

elem_iterator comma::EnumDeclStencil::begin_elems (  )  [inline]

Iterators over the elements of this enum stencil.

Definition at line 139 of file Stencil.h.

elem_iterator comma::EnumDeclStencil::end_elems (  )  [inline]

Iterators over the elements of this enum stencil.

Definition at line 140 of file Stencil.h.

IdLocPair comma::EnumDeclStencil::getElement ( unsigned  i  )  [inline]

Returns a pair representing the n'th enumeration literal.

Definition at line 124 of file Stencil.h.

const ElemVec& comma::EnumDeclStencil::getElements (  )  const [inline]

Definition at line 134 of file Stencil.h.

ElemVec& comma::EnumDeclStencil::getElements (  )  [inline]

Returns a direct reference to the literal pair vector.

Definition at line 133 of file Stencil.h.

bool comma::EnumDeclStencil::isCharacterType (  )  const [inline]

Returns true if this stencil denotes a character enumeration.

Definition at line 147 of file Stencil.h.

void comma::EnumDeclStencil::markAsCharacterType (  )  [inline]

Mark the enumeration as being a character type.

Definition at line 144 of file Stencil.h.

unsigned comma::EnumDeclStencil::numElements (  )  const [inline]

Returns the number of enumeration literals contained in this stencil.

Definition at line 121 of file Stencil.h.

void comma::EnumDeclStencil::reset (  )  [inline, virtual]

Reset this stencil to its default state.

Reimplemented from comma::ASTStencil.

Definition at line 106 of file Stencil.h.


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

Generated on 1 Feb 2010 for Comma by  doxygen 1.6.1

Rabisu Mirror Service We provide mirrors to support Open source communities. Our mirror server is located in Istanbul/Turkey region.

Please do not hesitate to contact mirror@rabisu.com for new open source mirror submissions.