CsAnonymousMethodExpression Struct Reference

Anonymous method expression AST node. More...

Inheritance diagram for CsAnonymousMethodExpression:

CsPrimaryExpression CsExpression CsNode

List of all members.

Public Member Functions

 CsAnonymousMethodExpression ()
 CsAnonymousMethodExpression (LineInfo line_info)
virtual ~CsAnonymousMethodExpression ()
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 clearEntities ()
 Clear all entity references (for internal purpose only).

Public Attributes

CsAnonymousFunctionSignaturesignature
 Anonymous method signature.
CsBlockblock
 Anonymous method block.
CsEntityTypeRef best_common_type
 Best common type.
CsTokenIndex delegate_token
CsTokenIndex lparen_token
CsTokenIndex rparen_token


Detailed Description

Anonymous method expression AST node.

EBNF grammar:

anonymous-method-expression:
  "delegate" (anonymous-method-signature)? block

anonymous-method-signature:
  "(" (anonymous-method-parameter-list)? ")"

anonymous-method-signature:
  "(" (anonymous-method-parameter-list)? ")"

anonymous-method-parameter-list:
  anonymous-method-parameter ( "," anonymous-method-parameter )?

anonymous-method-parameter:
  (parameter-modifier)? type identifier


Constructor & Destructor Documentation

CsAnonymousMethodExpression::CsAnonymousMethodExpression (  )  [inline]

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

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


Member Function Documentation

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

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

Reimplemented from CsExpression.

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

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

Implements CsNode.

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

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

Implements CsNode.

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

Recusively collect token indexes in source code order.

Implements CsNode.

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

Collect token indexes associated with this AST node.

Implements CsNode.

virtual void CsAnonymousMethodExpression::clearEntities (  )  [virtual]

Clear all entity references (for internal purpose only).

Reimplemented from CsExpression.


Member Data Documentation

Anonymous method block.

© 2008 metaspec