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 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 visit (CsAstVisitor *visitor)
 CsAstVisitor support.
virtual void callback (CsAstCallback *visitor)
 CsAstCallback support.

Static Public Member Functions

static void build_entities_anonymous_function_expression (CsDisplay &display, CsExpression *expression, bool &initialized_parent)
static bool member_lookup_anonymous_function_expression (CsDisplay &display, CsExpression *expression, CsAnonymousFunctionSignature *signature, CsNode *body, CsEntityMethodSpecifier *delegate_specifier, CsEntityTypeRef &best_common_type, bool assignment, bool &initialized_parent, bool check_imlicit_conversion_to_delegate_return_type)

Public Attributes

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

Detailed Description

Anonymous method expression AST node.

EBNF grammar:

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


Constructor & Destructor Documentation

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

Member Function Documentation

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

Collect token indexes associated with this AST node.

Implements CsNode.

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

Recursively collect token indexes in source code order.

Implements CsNode.

static void CsAnonymousMethodExpression::build_entities_anonymous_function_expression ( CsDisplay &  display,
CsExpression expression,
bool &  initialized_parent 
) [static]
virtual void CsAnonymousMethodExpression::callback ( CsAstCallback visitor  )  [inline, virtual]

CsAstCallback support.

Implements CsNode.

virtual void CsAnonymousMethodExpression::clearEntities (  )  [virtual]

Clear all entity references (for internal purpose only).

Reimplemented from CsExpression.

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

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

Implements CsNode.

static bool CsAnonymousMethodExpression::member_lookup_anonymous_function_expression ( CsDisplay &  display,
CsExpression expression,
CsAnonymousFunctionSignature signature,
CsNode body,
CsEntityMethodSpecifier delegate_specifier,
CsEntityTypeRef best_common_type,
bool  assignment,
bool &  initialized_parent,
bool  check_imlicit_conversion_to_delegate_return_type 
) [static]
virtual void CsAnonymousMethodExpression::visit ( CsAstVisitor visitor  )  [inline, virtual]

CsAstVisitor support.

Implements CsNode.


Member Data Documentation

Anonymous method block.

© 2010 metaspec