CsAttribute Class Reference

Attribute AST node. More...

Inheritance diagram for CsAttribute:
CsNode

List of all members.

Public Member Functions

 CsAttribute ()
override void replace (CsNode old_node, CsNode new_node)
 Replace CsNode fields.
override CsNode clone (clone_options options)
 Clone AST node.
override void addTokensRecursive (CsTokenCollector tokenCollector)
 Recursively collect token indexes in source code order.
override void addTokens (CsTokenCollector tokenCollector)
 Collect token indexes associated with this AST node.
override void visit (ICsAstVisitor visitor)
 ICsAstVisitor support.
override void callback (ICsAstCallback visitor)
 ICsAstCallback support.

Public Attributes

CsNode attribute_name
 Attribute name.
CsPositionalArgumentList positional_argument_list
 Positional arguments. Null if positional argument list empty.
CsNamedArgumentList named_argument_list
 Named arguments. Null if named argument list empty.
CsEntityType type
 Attribute type.
LinkedList< CsEntityAttributeentities
 Attribute entities.
int separator_token
int lparen_token
int rparen_token

Detailed Description

Attribute AST node.

EBNF grammar:

attribute:
  attribute-name "[" attribute-arguments "]"

attribute-name:
  type-name

attribute-arguments:
  "(" ( positional-argument-list )? ")"
  "(" positional-argument-list "," named-argument-list ")"
  "(" named-argument-list ")"


Constructor & Destructor Documentation

CsAttribute (  ) 

Member Function Documentation

override void addTokens ( CsTokenCollector  tokenCollector  )  [virtual]

Collect token indexes associated with this AST node.

Implements CsNode.

override void addTokensRecursive ( CsTokenCollector  tokenCollector  )  [virtual]

Recursively collect token indexes in source code order.

Implements CsNode.

override void callback ( ICsAstCallback  visitor  )  [virtual]

ICsAstCallback support.

Implements CsNode.

override CsNode clone ( clone_options  options  )  [virtual]

Clone AST node.

Implements CsNode.

override void replace ( CsNode  old_node,
CsNode  new_node 
) [virtual]

Replace CsNode fields.

Reimplemented from CsNode.

override void visit ( ICsAstVisitor  visitor  )  [virtual]

ICsAstVisitor support.

Implements CsNode.


Member Data Documentation

Attribute name.

Attribute entities.

Named arguments. Null if named argument list empty.

Positional arguments. Null if positional argument list empty.

Attribute type.

© 2010 metaspec