comma::DeclarativeRegion Class Reference

#include <DeclarativeRegion.h>

Inheritance diagram for comma::DeclarativeRegion:

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

Collaboration graph
[legend]

List of all members.

Classes

class  PredIter

Public Types

typedef DeclarationTable::iterator DeclIter
typedef
DeclarationTable::const_iterator 
ConstDeclIter
typedef std::pair< PredIter,
PredIter > 
PredRange

Public Member Functions

DeclarativeRegion * getParent ()
const DeclarativeRegion * getParent () const
void setParent (DeclarativeRegion *parentRegion)
void addDecl (Decl *decl)
void addDeclarationUsingRewrites (const AstRewriter &rewrites, Decl *decl)
void addDeclarationsUsingRewrites (const AstRewriter &rewrites, const DeclarativeRegion *region)
DeclIter beginDecls ()
DeclIter endDecls ()
ConstDeclIter beginDecls () const
ConstDeclIter endDecls () const
PredRange findDecls (IdentifierInfo *name) const
bool containsDecl (IdentifierInfo *name) const
Decl * findDecl (IdentifierInfo *name, Type *type)
bool removeDecl (Decl *decl)
bool collectFunctionDecls (IdentifierInfo *name, unsigned arity, std::vector< SubroutineDecl * > &dst)
bool collectProcedureDecls (IdentifierInfo *name, unsigned arity, std::vector< SubroutineDecl * > &dst)
Ast * asAst ()
const Ast * asAst () const
void addObserver (DeclarativeRegion *region)

Static Public Member Functions

static bool classof (const Ast *node)
static bool classof (const DomainDecl *node)
static bool classof (const SignatureDecl *node)
static bool classof (const VarietyDecl *node)
static bool classof (const FunctorDecl *node)
static bool classof (const AddDecl *node)
static bool classof (const ProcedureDecl *node)
static bool classof (const FunctionDecl *node)
static bool classof (const BlockStmt *node)
static bool classof (const DomainInstanceDecl *node)
static bool classof (const AbstractDomainDecl *node)
static bool classof (const EnumerationDecl *node)

Protected Types

typedef std::vector< Decl * > DeclarationTable

Protected Member Functions

 DeclarativeRegion (Ast::AstKind kind)
 DeclarativeRegion (Ast::AstKind kind, DeclarativeRegion *parent)
virtual void notifyAddDecl (Decl *decl)
virtual void notifyRemoveDecl (Decl *decl)

Protected Attributes

DeclarationTable declarations


Detailed Description

Definition at line 21 of file DeclarativeRegion.h.


Member Typedef Documentation

typedef DeclarationTable::const_iterator comma::DeclarativeRegion::ConstDeclIter

Definition at line 64 of file DeclarativeRegion.h.

typedef std::vector<Decl*> comma::DeclarativeRegion::DeclarationTable [protected]

Definition at line 30 of file DeclarativeRegion.h.

typedef DeclarationTable::iterator comma::DeclarativeRegion::DeclIter

Definition at line 60 of file DeclarativeRegion.h.

Definition at line 152 of file DeclarativeRegion.h.


Constructor & Destructor Documentation

comma::DeclarativeRegion::DeclarativeRegion ( Ast::AstKind  kind  )  [inline, protected]

Definition at line 24 of file DeclarativeRegion.h.

comma::DeclarativeRegion::DeclarativeRegion ( Ast::AstKind  kind,
DeclarativeRegion *  parent 
) [inline, protected]

Definition at line 27 of file DeclarativeRegion.h.


Member Function Documentation

void DeclarativeRegion::addDecl ( Decl *  decl  ) 

Definition at line 23 of file DeclarativeRegion.cpp.

void DeclarativeRegion::addDeclarationsUsingRewrites ( const AstRewriter &  rewrites,
const DeclarativeRegion *  region 
)

Definition at line 64 of file DeclarativeRegion.cpp.

void DeclarativeRegion::addDeclarationUsingRewrites ( const AstRewriter &  rewrites,
Decl *  decl 
)

Definition at line 28 of file DeclarativeRegion.cpp.

void comma::DeclarativeRegion::addObserver ( DeclarativeRegion *  region  )  [inline]

Definition at line 189 of file DeclarativeRegion.h.

const Ast * DeclarativeRegion::asAst (  )  const

Definition at line 155 of file DeclarativeRegion.cpp.

Ast * DeclarativeRegion::asAst (  ) 

Definition at line 186 of file DeclarativeRegion.cpp.

ConstDeclIter comma::DeclarativeRegion::beginDecls (  )  const [inline]

Definition at line 65 of file DeclarativeRegion.h.

DeclIter comma::DeclarativeRegion::beginDecls (  )  [inline]

Definition at line 61 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const EnumerationDecl *  node  )  [inline, static]

Reimplemented in comma::EnumerationDecl.

Definition at line 220 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const AbstractDomainDecl *  node  )  [inline, static]

Reimplemented in comma::AbstractDomainDecl.

Definition at line 219 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const DomainInstanceDecl *  node  )  [inline, static]

Reimplemented in comma::DomainInstanceDecl.

Definition at line 218 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const BlockStmt *  node  )  [inline, static]

Reimplemented in comma::BlockStmt.

Definition at line 217 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const FunctionDecl *  node  )  [inline, static]

Reimplemented in comma::FunctionDecl.

Definition at line 216 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const ProcedureDecl *  node  )  [inline, static]

Reimplemented in comma::ProcedureDecl.

Definition at line 215 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const AddDecl *  node  )  [inline, static]

Reimplemented in comma::AddDecl.

Definition at line 214 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const FunctorDecl *  node  )  [inline, static]

Reimplemented in comma::FunctorDecl.

Definition at line 213 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const VarietyDecl *  node  )  [inline, static]

Reimplemented in comma::VarietyDecl.

Definition at line 212 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const SignatureDecl *  node  )  [inline, static]

Reimplemented in comma::SignatureDecl.

Definition at line 211 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const DomainDecl *  node  )  [inline, static]

Reimplemented in comma::DomainDecl.

Definition at line 210 of file DeclarativeRegion.h.

static bool comma::DeclarativeRegion::classof ( const Ast *  node  )  [inline, static]

bool DeclarativeRegion::collectFunctionDecls ( IdentifierInfo *  name,
unsigned  arity,
std::vector< SubroutineDecl * > &  dst 
)

Definition at line 123 of file DeclarativeRegion.cpp.

bool DeclarativeRegion::collectProcedureDecls ( IdentifierInfo *  name,
unsigned  arity,
std::vector< SubroutineDecl * > &  dst 
)

Definition at line 139 of file DeclarativeRegion.cpp.

bool comma::DeclarativeRegion::containsDecl ( IdentifierInfo *  name  )  const [inline]

Definition at line 157 of file DeclarativeRegion.h.

ConstDeclIter comma::DeclarativeRegion::endDecls (  )  const [inline]

Definition at line 66 of file DeclarativeRegion.h.

DeclIter comma::DeclarativeRegion::endDecls (  )  [inline]

Definition at line 62 of file DeclarativeRegion.h.

Decl * DeclarativeRegion::findDecl ( IdentifierInfo *  name,
Type *  type 
)

Definition at line 74 of file DeclarativeRegion.cpp.

DeclarativeRegion::PredRange DeclarativeRegion::findDecls ( IdentifierInfo *  name  )  const

Definition at line 98 of file DeclarativeRegion.cpp.

const DeclarativeRegion* comma::DeclarativeRegion::getParent (  )  const [inline]

Definition at line 35 of file DeclarativeRegion.h.

DeclarativeRegion* comma::DeclarativeRegion::getParent (  )  [inline]

Definition at line 34 of file DeclarativeRegion.h.

void DeclarativeRegion::notifyAddDecl ( Decl *  decl  )  [protected, virtual]

Definition at line 193 of file DeclarativeRegion.cpp.

void DeclarativeRegion::notifyRemoveDecl ( Decl *  decl  )  [protected, virtual]

Definition at line 196 of file DeclarativeRegion.cpp.

bool DeclarativeRegion::removeDecl ( Decl *  decl  ) 

Definition at line 113 of file DeclarativeRegion.cpp.

void comma::DeclarativeRegion::setParent ( DeclarativeRegion *  parentRegion  )  [inline]

Definition at line 39 of file DeclarativeRegion.h.


Member Data Documentation

Definition at line 31 of file DeclarativeRegion.h.


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

Generated on Thu May 14 00:31:38 2009 for Comma by  doxygen 1.5.7.1