jparse.stmt
Class TryAST

java.lang.Object
  extended byantlr.BaseAST
      extended byantlr.CommonAST
          extended byantlr.CommonASTWithHiddenTokens
              extended byjparse.JavaAST
                  extended byjparse.stmt.StatementAST
                      extended byjparse.stmt.TryAST
All Implemented Interfaces:
antlr.collections.AST, HasExceptions, JavaTokenTypes, Serializable

public final class TryAST
extends StatementAST
implements JavaTokenTypes

An AST node that represents a try-catch-finally statement

Author:
Jerry James
See Also:
Serialized Form

Field Summary
private  CompoundAST block
          The try block
private  CatchAST[] catchClause
          The catch clauses
private  CompoundAST finallyClause
          The finally clause
 
Fields inherited from class jparse.stmt.StatementAST
control, exceptions, next, nonlocal
 
Fields inherited from class jparse.JavaAST
context, currSymTable, noTypes, symTable, topLevel, typeAST
 
Fields inherited from class antlr.CommonASTWithHiddenTokens
hiddenAfter, hiddenBefore
 
Fields inherited from class antlr.CommonAST
 
Fields inherited from class antlr.BaseAST
down, right
 
Fields inherited from interface jparse.JavaTokenTypes
ARRAY_DECLARATOR, ARRAY_INIT, ASSIGN, BAND, BAND_ASSIGN, BNOT, BOR, BOR_ASSIGN, BSR, BSR_ASSIGN, BXOR, BXOR_ASSIGN, CASE_GROUP, CHAR_LITERAL, COLON, COMMA, CONCAT_ASSIGN, CONCATENATION, CONST, CONSTRUCTOR_CALL, CTOR_DEF, DEC, DIV, DIV_ASSIGN, DOT, ELIST, EMPTY_STAT, EOF, EQUAL, ESC, EXPONENT, EXPRESSION_STAT, EXTENDS_CLAUSE, FILE, FLOAT_SUFFIX, FOR_CONDITION, FOR_INIT, FOR_ITERATOR, GE, GOTO, GT, HEX_DIGIT, IDENT, IMPLEMENTS_CLAUSE, INC, INDEX_OP, INSTANCE_INIT, LABELED_STAT, LAND, LBRACK, LCURLY, LE, LITERAL_abstract, LITERAL_boolean, LITERAL_break, LITERAL_byte, LITERAL_case, LITERAL_catch, LITERAL_char, LITERAL_class, LITERAL_continue, LITERAL_default, LITERAL_do, LITERAL_double, LITERAL_else, LITERAL_extends, LITERAL_false, LITERAL_final, LITERAL_finally, LITERAL_float, LITERAL_for, LITERAL_if, LITERAL_implements, LITERAL_import, LITERAL_instanceof, LITERAL_int, LITERAL_interface, LITERAL_long, LITERAL_native, LITERAL_new, LITERAL_null, LITERAL_package, LITERAL_private, LITERAL_protected, LITERAL_public, LITERAL_return, LITERAL_short, LITERAL_static, LITERAL_strictfp, LITERAL_super, LITERAL_switch, LITERAL_synchronized, LITERAL_this, LITERAL_throw, LITERAL_throws, LITERAL_transient, LITERAL_true, LITERAL_try, LITERAL_void, LITERAL_volatile, LITERAL_while, LNOT, LOR, LPAREN, LT, METHOD_CALL, METHOD_DEF, MINUS, MINUS_ASSIGN, ML_COMMENT, MOD, MOD_ASSIGN, MODIFIERS, NOT_EQUAL, NULL_TREE_LOOKAHEAD, NUM_FLOAT, NUM_INT, OBJBLOCK, PARAMETER_DEF, PARAMETERS, PAREN_EXPR, PLUS, PLUS_ASSIGN, POST_DEC, POST_INC, QUESTION, RBRACK, RCURLY, RPAREN, SEMI, SL, SL_ASSIGN, SL_COMMENT, SLIST, SR, SR_ASSIGN, STAR, STAR_ASSIGN, STRING_LITERAL, TYPE, TYPE_STAT, TYPECAST, UNARY_MINUS, UNARY_PLUS, VARIABLE_DEF, VARIABLE_DEFS, VOCAB, WS
 
Constructor Summary
TryAST(antlr.Token token)
          Create a new try-catch-finally statement AST
 
Method Summary
protected  StatementAST[] computeControl()
          Compute the list of points to which control might flow after this statement
protected  Type[] computeExceptions()
          Compute the checked exception types that might be thrown by this statement
 CatchAST[] getCatchClauses()
          Get the list of catch clauses for this try
 CompoundAST getFinallyClause()
          Get the finally clause for this try, if any
 CompoundAST getTryBlock()
          Get the try block
 VarList getVarList()
          Get the list of variables read, written, and declared by this statement
 void parseComplete()
          Set the instance variables
 
Methods inherited from class jparse.stmt.StatementAST
getExceptionTypes, nextControlPoints
 
Methods inherited from class jparse.JavaAST
print, printHiddenAfter, printHiddenBefore
 
Methods inherited from class antlr.CommonASTWithHiddenTokens
getHiddenAfter, getHiddenBefore, initialize
 
Methods inherited from class antlr.CommonAST
getText, getType, initialize, initialize, setText, setType
 
Methods inherited from class antlr.BaseAST
addChild, decode, encode, equals, equalsList, equalsListPartial, equalsTree, equalsTreePartial, findAll, findAllPartial, getColumn, getFirstChild, getLine, getNextSibling, getNumberOfChildren, getTokenNames, removeChildren, setFirstChild, setNextSibling, setVerboseStringConversion, toString, toStringList, toStringTree, xmlSerialize, xmlSerializeNode, xmlSerializeRootClose, xmlSerializeRootOpen
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

block

private CompoundAST block
The try block


catchClause

private CatchAST[] catchClause
The catch clauses


finallyClause

private CompoundAST finallyClause
The finally clause

Constructor Detail

TryAST

public TryAST(antlr.Token token)
Create a new try-catch-finally statement AST

Parameters:
token - the token represented by this AST node
Method Detail

parseComplete

public void parseComplete()
Set the instance variables

Overrides:
parseComplete in class StatementAST

computeExceptions

protected Type[] computeExceptions()
Description copied from class: StatementAST
Compute the checked exception types that might be thrown by this statement

Specified by:
computeExceptions in class StatementAST
Returns:
an array of types representing the exceptions that this statement might throw

computeControl

protected StatementAST[] computeControl()
Description copied from class: StatementAST
Compute the list of points to which control might flow after this statement

Specified by:
computeControl in class StatementAST
Returns:
a list of statements to which control might pass from this one

getVarList

public VarList getVarList()
Description copied from class: StatementAST
Get the list of variables read, written, and declared by this statement

Specified by:
getVarList in class StatementAST
Returns:
the list of variables read, written, and declared by this statement

getTryBlock

public CompoundAST getTryBlock()
Get the try block

Returns:
the try block

getCatchClauses

public CatchAST[] getCatchClauses()
Get the list of catch clauses for this try

Returns:
an array containing the catch clauses

getFinallyClause

public CompoundAST getFinallyClause()
Get the finally clause for this try, if any

Returns:
the finally clause, or null if there is not one