CsDelegate Struct Reference

Delegate AST node. More...

Inheritance diagram for CsDelegate:

CsScopeNode CsNode

List of all members.

Public Member Functions

 CsDelegate ()
 CsDelegate (LineInfo line_info)
virtual ~CsDelegate ()
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

CsAttributesattributes
 Attributes.
CsModifiers modifiers
 Modifiers.
CsTypeReftype
 Delegate type.
CsIdentifier identifier
 Delegate name.
CsTypeParameterListtype_parameter_list
 Type parameter list.
CsFormalParameterListparameters
 Delegate parameters.
single_list1
< CsTypeParameterConstraintsClause * > * 
constraints
 Type parameter constraints clause.
CsEntityMethodctor_method
 Constructor method entity.
CsEntityMethodinvoke_method
 Invoke method entity.
CsEntityMethodbeginInvoke_method
 BeginInvoke method entity.
CsEntityMethodendInvoke_method
 EndInvoke method entity.
CsTokenIndex delegate_token
CsTokenIndex lparen_token
CsTokenIndex rparen_token
CsTokenIndex semicolon_token


Detailed Description

Delegate AST node.

EBNF grammar:

delegate-declaration:
  (attributes)? (delegate-modifiers)? "delegate" type identifier
  (type-parameter-list)? "(" (formal-parameter-list)? ")" (type-parameter-constraints-clauses)? ";"

delegate-modifiers:
  (delegate-modifier)+

delegate-modifier:
  "new"
  "public"
  "protected"
  "internal"
  "private"


Constructor & Destructor Documentation

CsDelegate::CsDelegate (  )  [inline]

CsDelegate::CsDelegate ( LineInfo  line_info  )  [inline, explicit]

virtual CsDelegate::~CsDelegate (  )  [inline, virtual]


Member Function Documentation

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

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

Implements CsNode.

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

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

Implements CsNode.

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

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

Implements CsNode.

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

Recusively collect token indexes in source code order.

Implements CsNode.

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

Collect token indexes associated with this AST node.

Implements CsNode.

virtual void CsDelegate::addEntityDefinitions ( CsEntityCollector tokenCollector  )  [virtual]

Collect entities defined in this AST node.

Implements CsNode.

virtual void CsDelegate::addEntityReferences ( CsEntityCollector tokenCollector  )  [virtual]

Collect entity references.

Implements CsNode.

virtual void CsDelegate::clearEntities (  )  [virtual]

Clear all entity references (for internal purpose only).

Reimplemented from CsScopeNode.


Member Data Documentation

Delegate type.

Type parameter constraints clause.

Constructor method entity.

Invoke method entity.

BeginInvoke method entity.

EndInvoke method entity.

© 2008 metaspec