Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

cbl::codetree::def::TClassDef Class Reference

#include <defclass.h>

Inheritance diagram for cbl::codetree::def::TClassDef:

cbl::codetree::def::TDef cbl::codetree::TElement List of all members.

Public Types

typedef std::bitset< 5 >  TStyles
typedef std::deque< symbols::TSymbol * >  TSymbolList
typedef std::map< const symbols::TSymbol *,
TAccess
TAccessList
typedef std::map< TClassDef *,
TObjectInfo > 
TObjectOffsets
typedef std::deque< TClassDef * >  TClassDefList
typedef TClassDefList  TParentList
enum   TAccess { acUnknown, acPublic, acProtected, acPrivate }
enum   TStyle {
  csAbstract, csFinal, csVirtual, csGUID,
  csIndependent
}
enum   TVarStyle { vsMutable, vsClass }

Public Methods

  TClassDef (const TClassDef &)
std::string  name () const
virtual unsigned  size () const
virtual bool  isComplete () const
virtual void  isComplete (bool)
void  styles (const TStyles &)
const TStyles styles () const
void  setStyle (TStyle, bool state)
bool  getStyle (TStyle) const
const TClassDefList parents () const
void  addParent (TAccess AAccess, TClassDef *AParent, bool AVirtual=false)
bool  isParentOf (const TClassDef *) const
unsigned  offsetOf (const TClassDef *) const
const scopes::TScope scope () const
void  addMember (symbols::TSymbol *ASymbol, TAccess AAccess, swl::IErrorMgr &)
void  importMember (symbols::TSymbol *ASymbol, TAccess AAccess, swl::IErrorMgr &)
TAccess  accessOf (const symbols::TSymbol *ASymbol) const
TAccess  accessOf (const TClassDef *) const
bool  knows (const symbols::TSymbol *) const
const TSymbolList friends () const
void  friends (const TSymbolList &AFriends)
void  addFriend (symbols::TSymbol *AFriend)
bool  isFriend (const symbols::TSymbol *ASymbol) const
void  guid (const std::string &)
std::string  guid () const
virtual void  accept (TDefVisitor &)
virtual TClassDef *  clone () const

Protected Methods

  TClassDef (symbols::TModuleSym *AOwner, scopes::TScope *AParentScope)

Friends

class  symbols::TModuleSym

Member Typedef Documentation

typedef std::mapsymbols::TSymbol *, TAccess> cbl::codetree::def::TClassDef::TAccessList
 

Definition at line 62 of file defclass.h.

typedef std::deque cbl::codetree::def::TClassDef::TClassDefList
 

Definition at line 64 of file defclass.h.

typedef std::map cbl::codetree::def::TClassDef::TObjectOffsets
 

Definition at line 63 of file defclass.h.

typedef TClassDefList cbl::codetree::def::TClassDef::TParentList
 

Definition at line 65 of file defclass.h.

typedef std::bitset<5> cbl::codetree::def::TClassDef::TStyles
 

Definition at line 54 of file defclass.h.

typedef std::deque<symbols::TSymbol *> cbl::codetree::def::TClassDef::TSymbolList
 

Definition at line 61 of file defclass.h.


Member Enumeration Documentation

enum cbl::codetree::def::TClassDef::TAccess
 

Enumeration values:
acUnknown 
acPublic 
acProtected 
acPrivate 

Definition at line 45 of file defclass.h.

00045                  {
00046         acUnknown, acPublic, acProtected, acPrivate
00047     };

enum cbl::codetree::def::TClassDef::TStyle
 

Enumeration values:
csAbstract 
csFinal 
csVirtual 
csGUID 
csIndependent 

Definition at line 50 of file defclass.h.

00050                 {
00051         csAbstract, csFinal, csVirtual, csGUID, csIndependent
00052     };

enum cbl::codetree::def::TClassDef::TVarStyle
 

Enumeration values:
vsMutable 
vsClass 

Definition at line 57 of file defclass.h.

00057                    {
00058         vsMutable, vsClass
00059     };

Constructor & Destructor Documentation

cbl::codetree::def::TClassDef::TClassDef symbols::TModuleSym   AOwner,
scopes::TScope   AParentScope
[protected]
 

cbl::codetree::def::TClassDef::TClassDef const TClassDef &   
 


Member Function Documentation

virtual void cbl::codetree::def::TClassDef::accept TDefVisitor &    [virtual]
 

Implements cbl::codetree::def::TDef.

TAccess cbl::codetree::def::TClassDef::accessOf const TClassDef *    const
 

TAccess cbl::codetree::def::TClassDef::accessOf const symbols::TSymbol   ASymbol const
 

void cbl::codetree::def::TClassDef::addFriend symbols::TSymbol   AFriend
 

void cbl::codetree::def::TClassDef::addMember symbols::TSymbol   ASymbol,
TAccess    AAccess,
swl::IErrorMgr &   
 

void cbl::codetree::def::TClassDef::addParent TAccess    AAccess,
TClassDef *    AParent,
bool    AVirtual = false
 

virtual TClassDef* cbl::codetree::def::TClassDef::clone   const [virtual]
 

Implements cbl::codetree::def::TDef.

void cbl::codetree::def::TClassDef::friends const TSymbolList   AFriends
 

const TSymbolList& cbl::codetree::def::TClassDef::friends   const
 

bool cbl::codetree::def::TClassDef::getStyle TStyle    const
 

std::string cbl::codetree::def::TClassDef::guid   const
 

void cbl::codetree::def::TClassDef::guid const std::string &   
 

void cbl::codetree::def::TClassDef::importMember symbols::TSymbol   ASymbol,
TAccess    AAccess,
swl::IErrorMgr &   
 

virtual void cbl::codetree::def::TClassDef::isComplete bool    [virtual]
 

Reimplemented from cbl::codetree::def::TDef.

virtual bool cbl::codetree::def::TClassDef::isComplete   const [virtual]
 

Reimplemented from cbl::codetree::def::TDef.

bool cbl::codetree::def::TClassDef::isFriend const symbols::TSymbol   ASymbol const
 

bool cbl::codetree::def::TClassDef::isParentOf const TClassDef *    const
 

bool cbl::codetree::def::TClassDef::knows const symbols::TSymbol   const
 

std::string cbl::codetree::def::TClassDef::name   const
 

unsigned cbl::codetree::def::TClassDef::offsetOf const TClassDef *    const
 

const TClassDefList& cbl::codetree::def::TClassDef::parents   const
 

const scopes::TScope* cbl::codetree::def::TClassDef::scope   const
 

void cbl::codetree::def::TClassDef::setStyle TStyle   ,
bool    state
 

virtual unsigned cbl::codetree::def::TClassDef::size   const [virtual]
 

Implements cbl::codetree::def::TDef.

const TStyles& cbl::codetree::def::TClassDef::styles   const
 

void cbl::codetree::def::TClassDef::styles const TStyles  
 


Friends And Related Function Documentation

friend class symbols::TModuleSym [friend]
 

Definition at line 83 of file defclass.h.


The documentation for this class was generated from the following file:
Generated on Sat Apr 6 19:07:26 2002 for Compiler Backend Library by doxygen1.2.14 written by , © 1997-2002