CsAttribute Class Reference

Attribute AST node. More...

Inheritance diagram for CsAttribute:

CsNode

List of all members.

Public Member Functions

override void addTokensRecursive (CsTokenCollector tokenCollector)
 Recusively 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)
 CsAstVisitor support.
override void callback (ICsAstCallback visitor)
 CsAstCallback 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 ")"

© 2007 metaspec