CsTryStatement Class Reference

Try statement AST node. More...

Inheritance diagram for CsTryStatement:
CsStatement CsNode

List of all members.

Public Member Functions

 CsTryStatement ()
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

CsBlock try_block
 Try block.
LinkedList< CsCatchClausecatch_clauses
 Catch clauses.
CsBlock finally_block
 Finally block.
CsEntityBlock entity
 Try block entity.
int try_token
int finally_token

Detailed Description

Try statement AST node.

EBNF grammar:

try-statement:
  "try" block catch-clauses
  "try" block finally-clause
  "try" block catch-clauses finally-clause

catch-clauses:
  specific-catch-clauses (general-catch-clause)?
  (specific-catch-clauses)? general-catch-clause

specific-catch-clauses:
  ( specific-catch-clause )+

specific-catch-clause:
  "catch" "(" class-type [identifier] ")" block

general-catch-clause:
  "catch" block

finally-clause:
  "finally" block


Constructor & Destructor Documentation

CsTryStatement (  ) 

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

Catch clauses.

Try block entity.

Finally block.

Try block.

int try_token
© 2010 metaspec