|
Oracle Fusion Middleware Java API Reference for Oracle Extension SDK Reference 11g Release 1 (11.1.1.1.0) E13403-02 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectoracle.javatools.parser.AbstractSyntaxRecognizer
oracle.javatools.parser.java.v1.JavaSyntaxRecognizer
public abstract class JavaSyntaxRecognizer
The JavaSyntaxRecognizer class has all the little details and none of the parsing power. It can parse simple and qualified names and modifiers and that's it for its parsing power. All the utility routines are here. Things isJavaReservedWord, isPrimitiveType, codeToString, etc. Look in RootRecognizer and ExpressionRecognizer for all the parsing power.
AbstractSyntaxRecognizer
,
JavaSyntaxCodes
,
JavaTokens
Field Summary | |
---|---|
protected LexerToken |
commentToken
|
static int |
INPUT_BLOCK
The input buffer contains a code block. |
static int |
INPUT_EXPRESSION
The input buffer contains an expression. |
static int |
INPUT_ROOT
The input buffer contains a full java file. |
static int |
LEVEL_EXPRESSION
In expression level, parsing is done on an expression. |
static int |
LEVEL_IMPORTS
The import level is a special case of the "root level". |
static int |
LEVEL_ROOT
In root level, parsing is done on a full Java file. |
protected int |
startLevel
|
Fields inherited from class oracle.javatools.parser.AbstractSyntaxRecognizer |
---|
curLexerToken, curToken, DEBUG_OUTPUT, debugLevel, DEBUGLEVEL_HIGH, DEBUGLEVEL_MINIMAL, INTERNALERR_BACKEDUP_TWICE, INTERNALERR_BACKUP_NOT_IMPLEMENTED_YET, INTERNALERR_CANT_ACCESS_LEXER_TOKEN_ON_BACKUP, lexer, listener, peekingToken, resources, SYNTAX_EOF, SYNTAX_ERROR, SYNTAX_ROOT, SYNTAXERR_SKIPPING, TK_EOF |
Constructor Summary | |
---|---|
JavaSyntaxRecognizer()
|
Method Summary | |
---|---|
java.lang.String |
_codeToString(int syntaxCode)
Overrides the base class's _codeToString to understand Java syntax codes. |
static java.lang.String |
codeToString(int syntaxCode)
Translates a syntax code into a String for debugging. |
protected void |
errorExpecting(int token)
Generates an error-expecting token. |
protected boolean |
grabJavadocComment()
|
Lexer |
instantiatePreferredLexer()
Subclasses should instantiate and customize preferred lexers here. |
static boolean |
isAssignmentOperator(int token)
|
static boolean |
isInfixOperator(int token)
Don't forget that TK_INSTANCEOF is actually an infix operator. |
static boolean |
isJavaReservedWord(int token)
|
static boolean |
isLiteral(int token)
|
static boolean |
isPostfixOperator(int token)
|
static boolean |
isPrefixOperator(int token)
|
static boolean |
isPrimitiveType(int token)
|
protected boolean |
looksLikeNonCode(boolean expression)
The appearance of public, protected, or void anywhere except in the class scope usually means we're missing a brace or something else. |
static JavaSyntaxRecognizer |
newRecognizer()
Instantiates a new recognizer that starts at the root and will do a full Java parse. |
static JavaSyntaxRecognizer |
newRecognizer(int startLevel,
int depthLevel)
Instantiates a new recognizer that starts at the given depth and will parse down to the given depth. |
void |
parse()
Does the parse. |
protected abstract void |
parseBlock()
|
protected void |
parseBroken(java.lang.String errorMsg)
|
protected abstract void |
parseExpression()
|
protected void |
parseOptionalBrackets()
|
protected void |
parseQualifiedImportName()
|
protected void |
parseQualifiedName()
|
protected abstract void |
parseRoot()
|
protected void |
parseSimpleName()
|
protected void |
parseSingleToken(int syntax)
|
protected void |
parseType()
|
protected void |
setContext(java.lang.String key)
|
protected void |
setStartLevel(int startLevel)
|
static int |
translateModifier(int token)
Translates the token into a java.lang.reflect.Modifier value. |
Methods inherited from class oracle.javatools.parser.AbstractSyntaxRecognizer |
---|
_assert, copyStartOffset, curTokenToString, errorCheckpoint, errorEof, errorUnexpected, errorUnexpected, finish, finishInherit, finishToken, finishToken, finishToken, getCode, getContextString, getDataValue, getDebugLevel, getLexer, initialize, initialize, initialize, internalError, nextToken, nextToken, notImplementedYet, optionalToken, peekToken, reportSyntaxError, reportSyntaxError, reportSyntaxError, setContextString, setDataValue, setDebugLevel, setListener, skipToken, start, startQuiet |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int LEVEL_IMPORTS
public static final int LEVEL_ROOT
public static final int LEVEL_EXPRESSION
public static final int INPUT_ROOT
public static final int INPUT_BLOCK
public static final int INPUT_EXPRESSION
protected int startLevel
protected LexerToken commentToken
Constructor Detail |
---|
public JavaSyntaxRecognizer()
Method Detail |
---|
public static JavaSyntaxRecognizer newRecognizer()
public static JavaSyntaxRecognizer newRecognizer(int startLevel, int depthLevel)
startLevel
- the parse level to start parsing at. LEVEL_ROOT
is for parsing a Java file, LEVEL_STATEMENT is for parsing a code
block, LEVEL_EXPRESSION is for parsing an expression.depthLevel
- the parse level to parse down to. LEVEL_ROOT
will parse down to but not into code blocks. LEVEL_STATEMENT will
parse down to but not into expressions. LEVEL_EXPRESSION will do
a full Java parse.
protected void setStartLevel(int startLevel)
public Lexer instantiatePreferredLexer()
AbstractSyntaxRecognizer
instantiatePreferredLexer
in class AbstractSyntaxRecognizer
public static boolean isJavaReservedWord(int token)
public static boolean isPrimitiveType(int token)
token
- a token listed in JavaTokens
public static boolean isLiteral(int token)
token
- a token listed in JavaTokens
public static boolean isAssignmentOperator(int token)
token
- a token listed in JavaTokens
public static boolean isPrefixOperator(int token)
token
- a token listed in JavaTokens
public static boolean isInfixOperator(int token)
token
- a token listed in JavaTokens
public static boolean isPostfixOperator(int token)
token
- a token listed in JavaTokens
public static int translateModifier(int token)
protected boolean looksLikeNonCode(boolean expression)
expression
- True if the current context is an expression.
protected void setContext(java.lang.String key)
protected final void parseSingleToken(int syntax)
protected boolean grabJavadocComment()
protected void parseBroken(java.lang.String errorMsg)
protected void parseSimpleName()
protected void parseQualifiedImportName()
protected void parseQualifiedName()
protected void parseType()
protected void parseOptionalBrackets()
protected abstract void parseExpression()
protected abstract void parseBlock()
protected abstract void parseRoot()
public void parse()
AbstractSyntaxRecognizer
parse
in class AbstractSyntaxRecognizer
public java.lang.String _codeToString(int syntaxCode)
_codeToString
in class AbstractSyntaxRecognizer
syntaxCode
- The syntax code to decode.
public static java.lang.String codeToString(int syntaxCode)
syntaxCode
- The syntax code to decode.
protected void errorExpecting(int token)
AbstractSyntaxRecognizer
errorExpecting
in class AbstractSyntaxRecognizer
|
Oracle Fusion Middleware Java API Reference for Oracle Extension SDK Reference 11g Release 1 (11.1.1.1.0) E13403-02 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |