blob: 4f8214383501e9129e22b32affc470146c6fbf0f [file] [log] [blame]
package test.wksp.eclipse;
public class X19 {
/**
* Returns a list of the comments encountered while parsing this compilation
* unit.
* <p>
* Since the Java language allows comments to appear most anywhere in the
* source text, it is problematic to locate comments in relation to the
* structure of an AST. The one exception is doc comments which, by
* convention, immediately precede type, field, and method declarations;
* these comments are located in the AST by
* {@link BodyDeclaration#getJavadoc BodyDeclaration.getJavadoc}. Other
* comments do not show up in the AST. The table of comments is provided for
* clients that need to find the source ranges of all comments in the
* original source string. It includes entries for comments of all kinds
* (line, block, and doc), arranged in order of increasing source position.
* </p>
* Note on comment parenting: The {@link ASTNode#getParent() getParent()} of
* a doc comment associated with a body declaration is the body declaration
* node; for these comment nodes {@link ASTNode#getRoot() getRoot()} will
* return the compilation unit (assuming an unmodified AST) reflecting the
* fact that these nodes are property located in the AST for the compilation
* unit. However, for other comment nodes, {@link ASTNode#getParent()
* getParent()} will return <code>null</code>, and {@link ASTNode#getRoot()
* getRoot()} will return the comment node itself, indicating that these
* comment nodes are not directly connected to the AST for the compilation
* unit. The {@link Comment#getAlternateRoot Comment.getAlternateRoot}
* method provides a way to navigate from a comment to its compilation unit.
* </p>
* <p>
* A note on visitors: The only comment nodes that will be visited when
* visiting a compilation unit are the doc comments parented by body
* declarations. To visit all comments in normal reading order, iterate over
* the comment table and call {@link ASTNode#accept(ASTVisitor) accept} on
* each element.
* </p>
* <p>
* Clients cannot modify the resulting list.
* </p>
*
* @return an unmodifiable list of comments in increasing order of source
* start position, or <code>null</code> if comment information for
* this compilation unit is not available
* @see ASTParser
* @since 3.0
*/
void foo() {
}
}