CsEvent Struct Reference

Event AST node. More...

Inheritance diagram for CsEvent:

CsNode CsAttributesModifiers 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 addTokensRecursive (CsTokenCollector &tokenCollector)
 Recusively 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 clearEntities ()
 Clear all entity references (for internal purpose only).

Public Attributes

CS_GET_NODES CsTypeReftype
 Event type.
single_list1< CsEventDeclarator * > declarators
 Event declarators.
CsTokenIndex event_token
CsTokenIndex semicolon_token

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]
 

Recusively 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::clearEntities  )  [virtual]
 

Clear all entity references (for internal purpose only).

Implements 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.


Member Data Documentation

single_list1<CsEventDeclarator*> CsEvent::declarators
 

Event declarators.

CsTokenIndex CsEvent::event_token
 

CsTokenIndex CsEvent::semicolon_token
 

CS_GET_NODES CsTypeRef* CsEvent::type
 

Event type.

Reimplemented from CsNode.

© 2005 metaspec