CsEvent Struct Reference

Event AST node. More...

Inheritance diagram for CsEvent:
CsNode

List of all members.

Public Member Functions

 CsEvent ()
 CsEvent (LineInfo line_info)
 CsEvent (cs_node type, LineInfo line_info)
virtual ~CsEvent ()
virtual void build_entities (CsDisplay &display)
 Build Entities - pass 2 (for internal purpose only).
virtual void type_lookup (CsDisplay &display)
 Type Lookup - pass 3 (for internal purpose only).
virtual void member_lookup (CsDisplay &display)
 Member Lookup - pass 4 (for internal purpose only).
virtual void clearEntities ()
 Clear all entity references (for internal purpose only).
virtual void addTokensRecursive (CsTokenCollector &tokenCollector)
 Recursively collect token indexes in source code order.
virtual void addTokens (CsTokenCollector &tokenCollector)
 Collect token indexes associated with this AST node.
virtual void addEntityDefinitions (CsEntityCollector &tokenCollector)
 Collect entities defined in this AST node.
virtual void addEntityReferences (CsEntityCollector &tokenCollector)
 Collect entity references.
virtual void visit (CsAstVisitor *visitor)
 CsAstVisitor support.
virtual void callback (CsAstCallback *visitor)
 CsAstCallback support.
virtual cs_pass getNodePassType ()
 Returns node pass type.
virtual cs_entity_modification getEntityModification ()
 Returns entity modification.
virtual void iInternalRemoveEntities (cs_pass pass)

Public Attributes

CsAttributesattributes
 Attributes.
CsModifiers modifiers
 Modifiers.
CsTypeReftype
 Event type.
single_list< CsEventDeclarator * > declarators
 Event declarators.
CsTokenIndex event_token
CsTokenIndex semicolon_token
DcDatadc
 Documentation comments.

Detailed Description

Event AST node.

EBNF grammar:

event-declaration:
  (attributes)? (event-modifiers)? "event" type variable-declarators ";"
  (attributes)? (event-modifiers)? "event" type member-name "{" event-accessor-declarations "}"

member-name:
  identifier
  interface-type "." identifier

variable-declarators:
  variable-declarator ( "," variable-declarator )


Constructor & Destructor Documentation

CsEvent::CsEvent ( ) [inline]
CsEvent::CsEvent ( LineInfo  line_info) [inline, explicit]
CsEvent::CsEvent ( cs_node  type,
LineInfo  line_info 
) [inline]
virtual CsEvent::~CsEvent ( ) [inline, virtual]

Member Function Documentation

virtual void CsEvent::addEntityDefinitions ( CsEntityCollector tokenCollector) [inline, virtual]

Collect entities defined in this AST node.

Implements CsNode.

virtual void CsEvent::addEntityReferences ( CsEntityCollector tokenCollector) [inline, virtual]

Collect entity references.

Implements CsNode.

virtual void CsEvent::addTokens ( CsTokenCollector tokenCollector) [virtual]

Collect token indexes associated with this AST node.

Implements CsNode.

virtual void CsEvent::addTokensRecursive ( CsTokenCollector tokenCollector) [virtual]

Recursively collect token indexes in source code order.

Implements CsNode.

virtual void CsEvent::build_entities ( CsDisplay &  display) [virtual]

Build Entities - pass 2 (for internal purpose only).

Implements CsNode.

virtual void CsEvent::callback ( CsAstCallback visitor) [inline, virtual]

CsAstCallback support.

Implements CsNode.

virtual void CsEvent::clearEntities ( ) [virtual]

Clear all entity references (for internal purpose only).

Implements CsNode.

virtual cs_entity_modification CsEvent::getEntityModification ( ) [inline, virtual]

Returns entity modification.

Implements CsNode.

virtual cs_pass CsEvent::getNodePassType ( ) [inline, virtual]

Returns node pass type.

Implements CsNode.

virtual void CsEvent::iInternalRemoveEntities ( cs_pass  pass) [inline, virtual]

Reimplemented from CsNode.

virtual void CsEvent::member_lookup ( CsDisplay &  display) [virtual]

Member Lookup - pass 4 (for internal purpose only).

Implements CsNode.

virtual void CsEvent::type_lookup ( CsDisplay &  display) [virtual]

Type Lookup - pass 3 (for internal purpose only).

Implements CsNode.

virtual void CsEvent::visit ( CsAstVisitor visitor) [inline, virtual]

CsAstVisitor support.

Implements CsNode.


Member Data Documentation

Documentation comments.

Event declarators.

CsTokenIndex CsEvent::event_token

Event type.

© 2010 metaspec