Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse JDT Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.jdt.core.dom
Class Statement

    java.lang.Object
      org.eclipse.jdt.core.dom.ASTNode
          org.eclipse.jdt.core.dom.Statement

Direct Known Subclasses:
  AssertStatement, Block, BreakStatement, ConstructorInvocation, ContinueStatement, DoStatement, EmptyStatement, EnhancedForStatement, ExpressionStatement, ForStatement, IfStatement, LabeledStatement, ReturnStatement, SuperConstructorInvocation, SwitchCase, SwitchStatement, SynchronizedStatement, ThrowStatement, TryStatement, TypeDeclarationStatement, VariableDeclarationStatement, WhileStatement

public abstract class Statement
extends ASTNode

Abstract base class of AST nodes that represent statements. There are many kinds of statements.

The grammar combines both Statement and BlockStatement. For JLS2:

     Statement:
        Block
        IfStatement
        ForStatement
        WhileStatement
        DoStatement
        TryStatement
        SwitchStatement
        SynchronizedStatement
        ReturnStatement
        ThrowStatement
        BreakStatement
        ContinueStatement
        EmptyStatement
        ExpressionStatement
        LabeledStatement
        AssertStatement
        VariableDeclarationStatement
        TypeDeclarationStatement
        ConstructorInvocation
        SuperConstructorInvocation

For JLS3, an enhanced for node type was added:

     Statement:
        Block
        IfStatement
        ForStatement
        EnhancedForStatement
        WhileStatement
        DoStatement
        TryStatement
        SwitchStatement
        SynchronizedStatement
        ReturnStatement
        ThrowStatement
        BreakStatement
        ContinueStatement
        EmptyStatement
        ExpressionStatement
        LabeledStatement
        AssertStatement
        VariableDeclarationStatement
        TypeDeclarationStatement
        ConstructorInvocation
        SuperConstructorInvocation

Since:
  2.0

Field Summary

Fields inherited from class org.eclipse.jdt.core.dom.ASTNode
`ANNOTATION_TYPE_DECLARATION, ANNOTATION_TYPE_MEMBER_DECLARATION, ANONYMOUS_CLASS_DECLARATION, ARRAY_ACCESS, ARRAY_CREATION, ARRAY_INITIALIZER, ARRAY_TYPE, ASSERT_STATEMENT, ASSIGNMENT, BLOCK, BLOCK_COMMENT, BOOLEAN_LITERAL, BREAK_STATEMENT, CAST_EXPRESSION, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, COMPILATION_UNIT, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, DO_STATEMENT, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, JAVADOC, LABELED_STATEMENT, LINE_COMMENT, MALFORMED, MARKER_ANNOTATION, MEMBER_REF, MEMBER_VALUE_PAIR, METHOD_DECLARATION, METHOD_INVOCATION, METHOD_REF, METHOD_REF_PARAMETER, MODIFIER, NORMAL_ANNOTATION, NULL_LITERAL, NUMBER_LITERAL, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, QUALIFIED_NAME, QUALIFIED_TYPE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SWITCH_CASE, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_PARAMETER, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE`

Method Summary
`String` | `getLeadingComment()` Deprecated. This feature was removed in the 2.1 release because it was only a partial, and inadequate, solution to the issue of associating comments with statements. Furthermore, AST.parseCompilationUnit did not associate leading comments, making this moot. Clients that need to access comments preceding a statement should either consult the compilation unit's comment table or use a scanner to reanalyze the source text immediately preceding the statement's source range.
`void` | `setLeadingComment(String comment)` Deprecated. This feature was removed in the 2.1 release because it was only a partial, and inadequate, solution to the issue of associating comments with statements.

Methods inherited from class org.eclipse.jdt.core.dom.ASTNode
`accept, copySubtree, copySubtrees, delete, equals, getAST, getFlags, getLength, getLocationInParent, getNodeType, getParent, getProperty, getRoot, getStartPosition, getStructuralProperty, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Method Detail

### getLeadingComment

    public String getLeadingComment()

  Deprecated. This feature was removed in the 2.1 release because it was only a partial, and inadequate, solution to the issue of associating comments with statements. Furthermore, AST.parseCompilationUnit did not associate leading comments, making this moot. Clients that need to access comments preceding a statement should either consult the compilation unit's comment table or use a scanner to reanalyze the source text immediately preceding the statement's source range.

  Returns the leading comment string, including the starting and ending comment delimiters, and any embedded line breaks.

  A leading comment is a comment that appears before the statement. It may be either a traditional comment or an end-of-line comment. Traditional comments must begin with "/*, may contain line breaks, and must end with "*/. End-of-line comments must begin with "//", must end with a line delimiter (as per JLS 3.7), and must not contain line breaks.

  Returns:
    the comment string, or `null` if none

### setLeadingComment

    public void setLeadingComment(String comment)

  Deprecated. This feature was removed in the 2.1 release because it was only a partial, and inadequate, solution to the issue of associating comments with statements.

  Sets or clears the leading comment string. The comment string must include the starting and ending comment delimiters, and any embedded linebreaks.

  A leading comment is a comment that appears before the statement. It may be either a traditional comment or an end-of-line comment. Traditional comments must begin with "/*, may contain line breaks, and must end with "*/. End-of-line comments must begin with "//" (as per JLS 3.7), and must not contain line breaks.

  Examples: ``

       setLeadingComment("/* traditional comment */");  // correct
       setLeadingComment("missing comment delimiters");  // wrong
       setLeadingComment("/* unterminated traditional comment ");  // wrong
       setLeadingComment("/* broken\n traditional comment */");  // correct
       setLeadingComment("// end-of-line comment\n");  // correct
       setLeadingComment("// end-of-line comment without line terminator");  // correct
       setLeadingComment("// broken\n end-of-line comment\n");  // wrong

  Parameters:
    `comment` - the comment string, or `null` if none
  Throws:
    `IllegalArgumentException` - if the comment string is invalid

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse JDT Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) IBM Corp. and others 2000, 2004. All Rights Reserved.