CsEntity Class Reference

Abstract Entity class. Base class for all entity classes. More...

Inheritance diagram for CsEntity:

CsEntityAnonymousMethod CsEntityBlockVariable CsEntityConstantBase CsEntityEvent CsEntityFormalParameter CsEntityFormalParameterList CsEntityGenericParam CsEntityLocalVariable CsEntityMethod CsEntityProperty CsEntityVariable CsScopeEntity

List of all members.

Public Member Functions

 CsEntity (cs_entity e, cs_entity_access ac, string name)
 CsEntity (cs_entity e, cs_entity_access ac)
abstract void visit (ICsEntityVisitor visitor)
void stop_by_id ()
bool isNamespaceOrType ()
 Returns true if it is a namespace or type entity.
bool isNamespaceOrTypeRef ()
 Returns true if it is a namespace or type reference entity.
bool isType ()
 Returns true if it is a type entity.
bool isTypeRef ()
 Returns true if it is a type reference entity.
bool isNamespace ()
 Returns true if it is a namespace entity.
bool isField ()
 Returns true if it is a field entity.
bool isMethod ()
 Returns true if it is a method entity.
bool isProperty ()
 Returns true if it is a method entity.
bool isGenericParam ()
 Returns true if it is a generic parameter entity.
bool isVirtualMethod ()
 Returns true if it is a virtual method entity.
bool isOverride ()
 Returns true if it is a override entity.
void setBaseClassResolved ()
bool isBaseClassResolved ()
void setPartial (bool flag)
bool isPartial ()
bool isEffectiveBaseEvaluated ()
void setEffectiveBaseEvaluated ()
bool isGenerated ()
bool isCompilerAttribute ()
bool isRecursiveInheritance ()
void setRecursiveInheritance ()
bool isChecked ()
void setChecked ()
bool isLocalEntity ()
bool isSkip ()
void setSkip (bool flag)
bool isAnonymousType ()
void setAnonymousType (bool flag)
string getNameAsString (entity_name_options options)

Static Public Member Functions

static bool isParentChild (CsEntity parent, CsEntity child)

Public Attributes

cs_entity e
 Entity type enumeration.
cs_entity_access access
 Access to entity.
ushort pflags
 Parser flags (for internal purposes only).
string name
 Entity name. Name maybe compound (like "a.b.c") for explicit interface implementation entitites. Name is null for global namespace, blocks and unresolved explicit interface implementation entitites.
uint mflags
 Metadata flags (imported from assembly or generated by parser).
CsEntity parent
 Outer scope of entity. Non-null for all entitites except global namespace.
ClsAssembly assembly
 Assembly where entity was defined. Always null for entities generated by parser and namespaces.

Classes

struct  entity_name_options


Detailed Description

Abstract Entity class. Base class for all entity classes.
© 2007 metaspec