CsNewObjectExpression Struct Reference

New object expression AST node. More...

Inheritance diagram for CsNewObjectExpression:
CsPrimaryExpression CsExpression CsNode

List of all members.

Public Member Functions

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

Public Attributes

CsTypeReftype
 New object type.
CsArgumentListargument_list
 Constructor arguments.
CsNodeinitializer
 Object or collection initializer.
CsTokenIndex new_token
CsTokenIndex lparen_token
CsTokenIndex rparen_token
bool parenthesis

Detailed Description

New object expression AST node.

EBNF grammar:

object-creation-expression:
  "new" type "(" ( argument_list )? ")" object-or-collection-initializer?
  "new" type object-or-collection-initializer

delegate-creation-expression:
  "new" delegate-type "(" expression ")"


Constructor & Destructor Documentation

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

Member Function Documentation

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

Collect token indexes associated with this AST node.

Implements CsNode.

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

Recursively collect token indexes in source code order.

Implements CsNode.

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

CsAstCallback support.

Implements CsNode.

virtual void CsNewObjectExpression::clearEntities (  )  [virtual]

Clear all entity references (for internal purpose only).

Reimplemented from CsExpression.

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

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

Implements CsNode.

virtual void CsNewObjectExpression::visit ( CsAstVisitor visitor  )  [virtual]

CsAstVisitor support.

Implements CsNode.


Member Data Documentation

Object or collection initializer.

© 2010 metaspec