org.aspectj.org.eclipse.jdt.internal.codeassist.complete
Class CompletionJavadocParser

java.lang.Object
  extended by org.aspectj.org.eclipse.jdt.internal.compiler.parser.AbstractCommentParser
      extended by org.aspectj.org.eclipse.jdt.internal.compiler.parser.JavadocParser
          extended by org.aspectj.org.eclipse.jdt.internal.codeassist.complete.CompletionJavadocParser
All Implemented Interfaces:
JavadocTagConstants

public class CompletionJavadocParser
extends JavadocParser

Parser specialized for decoding javadoc comments which includes cursor location for code completion.


Field Summary
static int BLOCK_ALL_TAGS_LENGTH
           
static int INLINE_ALL_TAGS_LENGTH
           
 
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.parser.JavadocParser
docComment, shouldReportProblems
 
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.parser.AbstractCommentParser
abort, ARGUMENT_RECOVERY, ARGUMENT_TYPE_RECOVERY, AST_STACK_INCREMENT, astLengthPtr, astLengthStack, astPtr, astStack, checkDocComment, COMPIL_PARSER, COMPLETION_PARSER, complianceLevel, deprecated, DOM_PARSER, EMPTY_ARGUMENT_RECOVERY, firstTagPosition, FORMATTER_COMMENT_PARSER, identifierLengthPtr, identifierLengthStack, identifierPositionStack, identifierPtr, identifierStack, index, inheritedPositions, inheritedPositionsPtr, inlineTagStart, inlineTagStarted, javadocEnd, javadocStart, javadocTextEnd, javadocTextStart, kind, lastBlockTagValue, lastIdentifierEndPosition, lineEnd, lineEnds, lineStarted, memberStart, PARSER_KIND, QUALIFIED_NAME_RECOVERY, reportProblems, returnStatement, scanner, SELECTION_PARSER, setJavadocPositions, source, SOURCE_PARSER, sourceLevel, sourceParser, starPosition, tagSourceEnd, tagSourceStart, tagValue, TEXT_PARSE, TEXT_VERIF, textStart, tokenPreviousPosition
 
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.parser.JavadocTagConstants
ALL_TAGS_LENGTH, BLOCK_IDX, BLOCK_TAGS, BLOCK_TAGS_LENGTH, CLASS_TAGS, COMPILATION_UNIT_TAGS, FIELD_TAGS, HREF_TAG, INLINE_IDX, INLINE_TAGS, INLINE_TAGS_LENGTH, JAVADOC_TAG_TYPE, METHOD_TAGS, NO_TAG_VALUE, ORDERED_TAGS_NUMBER, PACKAGE_TAGS, PARAM_TAG_EXPECTED_ORDER, SEE_TAG_EXPECTED_ORDER, TAG_AUTHOR, TAG_AUTHOR_LENGTH, TAG_AUTHOR_VALUE, TAG_CATEGORY, TAG_CATEGORY_LENGTH, TAG_CATEGORY_VALUE, TAG_CODE, TAG_CODE_LENGTH, TAG_CODE_VALUE, TAG_DEPRECATED, TAG_DEPRECATED_LENGTH, TAG_DEPRECATED_VALUE, TAG_DOC_ROOT, TAG_DOC_ROOT_LENGTH, TAG_DOC_ROOT_VALUE, TAG_EXCEPTION, TAG_EXCEPTION_LENGTH, TAG_EXCEPTION_VALUE, TAG_INHERITDOC, TAG_INHERITDOC_LENGTH, TAG_INHERITDOC_VALUE, TAG_LINK, TAG_LINK_LENGTH, TAG_LINK_VALUE, TAG_LINKPLAIN, TAG_LINKPLAIN_LENGTH, TAG_LINKPLAIN_VALUE, TAG_LITERAL, TAG_LITERAL_LENGTH, TAG_LITERAL_VALUE, TAG_NAMES, TAG_OTHERS_VALUE, TAG_PARAM, TAG_PARAM_LENGTH, TAG_PARAM_VALUE, TAG_RETURN, TAG_RETURN_LENGTH, TAG_RETURN_VALUE, TAG_SEE, TAG_SEE_LENGTH, TAG_SEE_VALUE, TAG_SERIAL, TAG_SERIAL_DATA, TAG_SERIAL_DATA_LENGTH, TAG_SERIAL_DATA_VALUE, TAG_SERIAL_FIELD, TAG_SERIAL_FIELD_LENGTH, TAG_SERIAL_FIELD_VALUE, TAG_SERIAL_LENGTH, TAG_SERIAL_VALUE, TAG_SINCE, TAG_SINCE_LENGTH, TAG_SINCE_VALUE, TAG_THROWS, TAG_THROWS_LENGTH, TAG_THROWS_VALUE, TAG_TYPE_BLOCK, TAG_TYPE_INLINE, TAG_TYPE_NONE, TAG_VALUE, TAG_VALUE_LENGTH, TAG_VALUE_VALUE, TAG_VERSION, TAG_VERSION_LENGTH, TAG_VERSION_VALUE, THROWS_TAG_EXPECTED_ORDER
 
Constructor Summary
CompletionJavadocParser(CompletionParser sourceParser)
           
 
Method Summary
 boolean checkDeprecation(int commentPtr)
           
protected  boolean commentParse()
           
protected  java.lang.Object createArgumentReference(char[] name, int dim, boolean isVarargs, java.lang.Object typeRef, long[] dimPositions, long argNamePos)
           
protected  java.lang.Object createFieldReference(java.lang.Object receiver)
           
protected  java.lang.Object createMethodReference(java.lang.Object receiver, java.util.List arguments)
           
protected  java.lang.Object createTypeReference(int primitiveToken)
           
protected  java.lang.Object parseArguments(java.lang.Object receiver)
           
protected  boolean parseParam()
           
protected  boolean parseReference()
           
protected  boolean parseTag(int previousPosition)
           
protected  boolean parseThrows()
           
protected  boolean pushParamName(boolean isTypeParam)
           
protected  void pushText(int start, int end)
          Push text.
protected  int readToken()
           
protected  java.lang.Object syntaxRecoverArgumentType(java.lang.Object receiver, java.util.List arguments, java.lang.Object argument)
           
protected  java.lang.Object syntaxRecoverEmptyArgumentType(java.lang.Object methodRef)
           
protected  java.lang.Object syntaxRecoverQualifiedName(int primitiveToken)
           
protected  void updateDocComment()
           
protected  boolean verifySpaceOrEndComment()
           
 
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.parser.JavadocParser
createReturnStatement, createTag, getParsedTypeDeclaration, parseInheritDocTag, parseReturn, parseSimpleTag, pushSeeRef, pushThrowName, refreshInlineTagPosition, refreshReturnStatement, toString
 
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.parser.AbstractCommentParser
consumeToken, createFakeReference, getCurrentTokenType, parseHref, parseHtmlTag, parseIdentifierTag, parseMember, parseQualifiedName, peekChar, pushIdentifier, pushOnAstStack, readChar, readTokenAndConsume, readTokenSafely, recordInheritedPosition, setInlineTagStarted, updateLineEnd, verifyEndLine
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

INLINE_ALL_TAGS_LENGTH

public static final int INLINE_ALL_TAGS_LENGTH

BLOCK_ALL_TAGS_LENGTH

public static final int BLOCK_ALL_TAGS_LENGTH
Constructor Detail

CompletionJavadocParser

public CompletionJavadocParser(CompletionParser sourceParser)
Method Detail

checkDeprecation

public boolean checkDeprecation(int commentPtr)
Overrides:
checkDeprecation in class JavadocParser

commentParse

protected boolean commentParse()
Overrides:
commentParse in class AbstractCommentParser

createArgumentReference

protected java.lang.Object createArgumentReference(char[] name,
                                                   int dim,
                                                   boolean isVarargs,
                                                   java.lang.Object typeRef,
                                                   long[] dimPositions,
                                                   long argNamePos)
                                            throws InvalidInputException
Overrides:
createArgumentReference in class JavadocParser
Throws:
InvalidInputException

createFieldReference

protected java.lang.Object createFieldReference(java.lang.Object receiver)
                                         throws InvalidInputException
Overrides:
createFieldReference in class JavadocParser
Throws:
InvalidInputException

createMethodReference

protected java.lang.Object createMethodReference(java.lang.Object receiver,
                                                 java.util.List arguments)
                                          throws InvalidInputException
Overrides:
createMethodReference in class JavadocParser
Throws:
InvalidInputException

createTypeReference

protected java.lang.Object createTypeReference(int primitiveToken)
Overrides:
createTypeReference in class JavadocParser

parseArguments

protected java.lang.Object parseArguments(java.lang.Object receiver)
                                   throws InvalidInputException
Overrides:
parseArguments in class AbstractCommentParser
Throws:
InvalidInputException

parseParam

protected boolean parseParam()
                      throws InvalidInputException
Overrides:
parseParam in class JavadocParser
Throws:
InvalidInputException

parseReference

protected boolean parseReference()
                          throws InvalidInputException
Overrides:
parseReference in class AbstractCommentParser
Throws:
InvalidInputException

parseTag

protected boolean parseTag(int previousPosition)
                    throws InvalidInputException
Overrides:
parseTag in class JavadocParser
Throws:
InvalidInputException

parseThrows

protected boolean parseThrows()
Overrides:
parseThrows in class JavadocParser

pushParamName

protected boolean pushParamName(boolean isTypeParam)
Overrides:
pushParamName in class JavadocParser

pushText

protected void pushText(int start,
                        int end)
Push text. If it includes completion location, then rescan line to see if there's a possible reference under the cursor location.

Overrides:
pushText in class JavadocParser
See Also:
AbstractCommentParser.pushText(int, int)

readToken

protected int readToken()
                 throws InvalidInputException
Overrides:
readToken in class AbstractCommentParser
Throws:
InvalidInputException

syntaxRecoverQualifiedName

protected java.lang.Object syntaxRecoverQualifiedName(int primitiveToken)
                                               throws InvalidInputException
Overrides:
syntaxRecoverQualifiedName in class AbstractCommentParser
Throws:
InvalidInputException

syntaxRecoverArgumentType

protected java.lang.Object syntaxRecoverArgumentType(java.lang.Object receiver,
                                                     java.util.List arguments,
                                                     java.lang.Object argument)
                                              throws InvalidInputException
Throws:
InvalidInputException

syntaxRecoverEmptyArgumentType

protected java.lang.Object syntaxRecoverEmptyArgumentType(java.lang.Object methodRef)
                                                   throws InvalidInputException
Throws:
InvalidInputException

updateDocComment

protected void updateDocComment()
Overrides:
updateDocComment in class JavadocParser

verifySpaceOrEndComment

protected boolean verifySpaceOrEndComment()
Overrides:
verifySpaceOrEndComment in class AbstractCommentParser