Oracle Fusion Middleware Java API Reference for Oracle Extension SDK Reference
11g Release 1 (11.1.1.1.0)

E13403-02

oracle.javatools.parser.java.v1.symbol
Class ControlStatement

java.lang.Object
  extended by oracle.javatools.parser.util.ArrayListHeap
      extended by oracle.javatools.parser.java.v1.symbol.JavaSymbol
          extended by oracle.javatools.parser.java.v1.symbol.StatementSymbol
              extended by oracle.javatools.parser.java.v1.symbol.ControlStatement
All Implemented Interfaces:
JavaSyntaxCodes, JavaTokens, Scope
Direct Known Subclasses:
CatchClause, ForStatement, TryStatement

public class ControlStatement
extends StatementSymbol

ControlStatement represents all control statements and the catch clause of a try statement (though at parse time, it also represents other else and finally clauses).

Sometimes the clauses of a control statement are single statements or sometimes they're blocks. Some control statements require blocks, but for the same of keeping the interface simple, this class treats all clauses as statements upon which you can call isBlock() and getBlock().

Note: ForStatements do not have paren expressions. Refer to the ForStatement API for details on how to retrieve the expressions there. API


Field Summary
static int CATCH
          The control type for catch clauses.
static int DO
          The control type for do statements.
static int FOR
          The control type for for statements.
static int IF
          The control type for if statements.
static int SWITCH
          The control type for switch statements.
static int SYNCHRONIZED
          The control type for synchronized statements.
static int TRY
          The control type for try statements.
static int WHILE
          The control type for while statements.
 
Fields inherited from class oracle.javatools.parser.java.v1.symbol.StatementSymbol
labels, PREFIX_ASSERT, PREFIX_BREAK, PREFIX_CONTINUE, PREFIX_RETURN, PREFIX_THROW, TYPE_BLOCK, TYPE_CONTROL, TYPE_EXPRESSION, TYPE_SQL, TYPE_SWITCH_CASE
 
Fields inherited from interface oracle.javatools.parser.java.v1.symbol.Scope
SCOPE_BLOCK, SCOPE_CATCH, SCOPE_CLASS, SCOPE_MEMBER, SCOPE_METHOD, SCOPE_ROOT, SCOPE_STATEMENT, SCOPE_TRY
 
Fields inherited from interface oracle.javatools.parser.java.v1.JavaTokens
TK_ABSTRACT, TK_AND_ASG, TK_ASG, TK_ASSERT, TK_BINAND, TK_BINNOT, TK_BINOR, TK_BINXOR, TK_BOOLEAN, TK_BOOLEAN_LITERAL, TK_BREAK, TK_BYTE, TK_CASE, TK_CATCH, TK_CHAR, TK_CHAR_LITERAL, TK_CLASS, TK_COLON, TK_COMMA, TK_CONST, TK_CONTINUE, TK_DEC, TK_DEFAULT, TK_DIV, TK_DIV_ASG, TK_DO, TK_DOC_COMMENT, TK_DOT, TK_DOUBLE, TK_ELSE, TK_EQ, TK_EXTENDS, TK_FINAL, TK_FINALLY, TK_FLOAT, TK_FLOAT_LITERAL, TK_FOR, TK_GE, TK_GOTO, TK_GT, TK_IDENTIFIER, TK_IF, TK_IMPLEMENTS, TK_IMPORT, TK_INC, TK_INSTANCEOF, TK_INT, TK_INT_LITERAL, TK_INTERFACE, TK_LBRACE, TK_LBRACKET, TK_LE, TK_LOGAND, TK_LOGNOT, TK_LOGOR, TK_LONG, TK_LPAREN, TK_LSH, TK_LSH_ASG, TK_LT, TK_MINUS, TK_MINUS_ASG, TK_MOD, TK_MOD_ASG, TK_MUL, TK_MUL_ASG, TK_MULTI_COMMENT, TK_NATIVE, TK_NE, TK_NEW, TK_NULL_LITERAL, TK_OR_ASG, TK_PACKAGE, TK_PLUS, TK_PLUS_ASG, TK_PRIVATE, TK_PROTECTED, TK_PUBLIC, TK_QUES, TK_RBRACE, TK_RBRACKET, TK_RETURN, TK_RPAREN, TK_RSH, TK_RSH_ASG, TK_SEMI, TK_SHORT, TK_SINGLE_COMMENT, TK_SQLJ_STATEMENT, TK_STATIC, TK_STRICTFP, TK_STRING_LITERAL, TK_SUPER, TK_SWITCH, TK_SYNCHRONIZED, TK_THIS, TK_THROW, TK_THROWS, TK_TRANSIENT, TK_TRY, TK_URSH, TK_URSH_ASG, TK_VOID, TK_VOLATILE, TK_WHILE, TK_XOR_ASG
 
Fields inherited from interface oracle.javatools.parser.java.v1.JavaSyntaxCodes
SYNTAX_ARGUMENTS, SYNTAX_ARRAY_CREATOR, SYNTAX_ARRAY_INITIALIZER, SYNTAX_ASG_OPERATOR, SYNTAX_BLOCK, SYNTAX_BRACKET_EXPRESSION, SYNTAX_BRACKETS_OPT, SYNTAX_BROKEN, SYNTAX_CATCH_CLAUSE, SYNTAX_CATCH_PAREN_EXPRESSION, SYNTAX_CLASS_CREATOR, SYNTAX_CLASS_DECLARATION, SYNTAX_CLASS_INITIALIZER, SYNTAX_CODE_ELEMENT, SYNTAX_CONSTRUCTOR_DECLARATION, SYNTAX_CONTROL_PAREN_EXPRESSION, SYNTAX_CREATOR, SYNTAX_DO_STATEMENT, SYNTAX_DOC_COMMENT, SYNTAX_ELSE_CLAUSE, SYNTAX_EXP_WRAPPER, SYNTAX_EXPRESSION, SYNTAX_EXPRESSION_OR_DECL, SYNTAX_EXTENDS, SYNTAX_FIELD_DECLARATION, SYNTAX_FINALLY_CLAUSE, SYNTAX_FOR_CONDITIONAL, SYNTAX_FOR_INIT, SYNTAX_FOR_PAREN_EXPRESSION, SYNTAX_FOR_STATEMENT, SYNTAX_FOR_UPDATE, SYNTAX_FORMAL_PARAMETER, SYNTAX_FORMAL_PARAMETER_LIST, SYNTAX_IDENTIFIER_PRIMARY, SYNTAX_IF_STATEMENT, SYNTAX_IMPLEMENTS, SYNTAX_IMPORT_DECLARATION, SYNTAX_INFIX_OPERATOR, SYNTAX_INIT_ARRAY_CREATOR, SYNTAX_INNER_CLASS_OR_INTERFACE, SYNTAX_INNER_CREATOR, SYNTAX_INTERFACE_DECLARATION, SYNTAX_JAVA_ROOT, SYNTAX_MEMBER_DECLARATION, SYNTAX_METHOD_DECLARATION, SYNTAX_MODIFIERS, SYNTAX_PACKAGE_DECLARATION, SYNTAX_PAREN_EXPRESSION, SYNTAX_POSTFIX_OPERATOR, SYNTAX_PREFIX_OPERATOR, SYNTAX_PRIMARY, SYNTAX_PRIMARY_BRACKETS, SYNTAX_PRIMARY_WORD, SYNTAX_QUALIFIED_IMPORT_NAME, SYNTAX_QUALIFIED_NAME, SYNTAX_QUALIFIED_PRIMARY, SYNTAX_QUES_OPERATOR, SYNTAX_SIMPLE_NAME, SYNTAX_SQLJ_CONTEXT, SYNTAX_SQLJ_STATEMENT, SYNTAX_STATEMENT, SYNTAX_SWITCH_BLOCK, SYNTAX_SWITCH_CASE, SYNTAX_SWITCH_STATEMENT, SYNTAX_SYNCH_STATEMENT, SYNTAX_THROWS, SYNTAX_TRY_STATEMENT, SYNTAX_TYPE, SYNTAX_TYPE_BODY, SYNTAX_TYPE_DECLARATION, SYNTAX_UNINIT_ARRAY_CREATOR, SYNTAX_UNPARSED_BLOCK, SYNTAX_UNPARSED_EXPRESSION, SYNTAX_UNPARSED_PAREN_EXPRESSION, SYNTAX_VARIABLE_DECLARATOR, SYNTAX_VARIABLE_INITIALIZER, SYNTAX_WHILE_STATEMENT
 
Method Summary
 int getControlType()
          See the enumeration constants below for what the control types are.
 StatementSymbol getEndClause()
          If statements have else clauses and Try statements have finally clauses.
 ExpressionSymbol getParenExpr()
           
 StatementSymbol getPrimaryClause()
           
 int getStmtType()
           
 
Methods inherited from class oracle.javatools.parser.java.v1.symbol.StatementSymbol
findLabel, findType, findVariable, getBlock, getCatchClauses, getClasses, getEnclosingScope, getExprPrefix, getExprSymbol, getLabels, getModifiers, getOptionalExpr, getScopeType, getVariables, setEnclosingScope
 
Methods inherited from class oracle.javatools.parser.java.v1.symbol.JavaSymbol
getCode, getEndOffset, getParent, getStartOffset
 
Methods inherited from class oracle.javatools.parser.util.ArrayListHeap
allocArrayList, freeArrayList
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CATCH

public static final int CATCH
The control type for catch clauses.

See Also:
Constant Field Values

DO

public static final int DO
The control type for do statements.

See Also:
Constant Field Values

IF

public static final int IF
The control type for if statements.

See Also:
Constant Field Values

FOR

public static final int FOR
The control type for for statements. Indicates that this instance is actually a ForStatement. getParenExpr() will return null.

See Also:
Constant Field Values

SWITCH

public static final int SWITCH
The control type for switch statements.

See Also:
Constant Field Values

SYNCHRONIZED

public static final int SYNCHRONIZED
The control type for synchronized statements.

See Also:
Constant Field Values

TRY

public static final int TRY
The control type for try statements. Indicates that this instance is actually a TryStatement.

See Also:
Constant Field Values

WHILE

public static final int WHILE
The control type for while statements.

See Also:
Constant Field Values
Method Detail

getControlType

public int getControlType()
See the enumeration constants below for what the control types are.

Returns:
The control type of this statement.

getParenExpr

public ExpressionSymbol getParenExpr()
Returns:
The CodeBlockSymbol that represents the parentheses expression. Null if none.

getPrimaryClause

public StatementSymbol getPrimaryClause()
Returns:
The Statement that represents the primary clause of the control statements. Always non-null.

getEndClause

public StatementSymbol getEndClause()
If statements have else clauses and Try statements have finally clauses. Those are both retrieved using this call.

Returns:
The Statement that represents the end clause of the control statement. Null if none.

getStmtType

public int getStmtType()
Overrides:
getStmtType in class StatementSymbol
Returns:
the type of this statement, see enumerated constants

Oracle Fusion Middleware Java API Reference for Oracle Extension SDK Reference
11g Release 1 (11.1.1.1.0)

E13403-02

Copyright © 1997, 2009, Oracle. All rights reserved.