org.argouml.language.java.generator
Class JavaRecognizer

java.lang.Object
  |
  +--antlr.LLkParser
        |
        +--org.argouml.language.java.generator.JavaRecognizer
All Implemented Interfaces:
JavaTokenTypes

public class JavaRecognizer
extends antlr.LLkParser
implements JavaTokenTypes

Java 1.2 Recognizer Contributing authors: John Mitchell johnm@non.net Terence Parr parrt@magelang.com John Lilley jlilley@empathy.com Scott Stanchfield thetick@magelang.com Markus Mohnen mohnen@informatik.rwth-aachen.de Peter Williams pwilliams@netdynamics.com Version 1.00 December 9, 1997 -- initial release Version 1.01 December 10, 1997 fixed bug in octal def (0..7 not 0..8) Version 1.10 August 1998 (parrt) added tree construction fixed definition of WS,comments for mac,pc,unix newlines added unary plus Version 1.11 (Nov 20, 1998) Added "shutup" option to turn off last ambig warning. Fixed inner class def to allow named class defs as statements synchronized requires compound not simple statement add [] after builtInType DOT class in primaryExpression "const" is reserved but not valid..removed from modifiers Version 1.12 (Feb 2, 1999) Changed LITERAL_xxx to xxx in tree grammar. Updated java.g to use tokens {...} now for 2.6.0 (new feature). Version 1.13 (Apr 23, 1999) Didn't have (stat)? for else clause in tree parser. Didn't gen ASTs for interface extends. Updated tree parser too. Updated to 2.6.0. Version 1.14 (Jun 20, 1999) Allowed final/abstract on local classes. Removed local interfaces from methods Put instanceof precedence where it belongs...in relationalExpr It also had expr not type as arg; fixed it. Missing ! on SEMI in classBlock fixed: (expr) + "string" was parsed incorrectly (+ as unary plus). fixed: didn't like Object[].class in parser or tree parser Version 1.15 (Jun 26, 1999) Screwed up rule with instanceof in it. :( Fixed. Tree parser didn't like (expr).something; fixed. Allowed multiple inheritance in tree grammar. oops. Version 1.16 (August 22, 1999) Extending an interface built a wacky tree: had extra EXTENDS. Tree grammar didn't allow multiple superinterfaces. Tree grammar didn't allow empty var initializer: {} Version 1.17 (October 12, 1999) ESC lexer rule allowed 399 max not 377 max. java.tree.g didn't handle the expression of synchronized statements. Version 1.18 (January 07, 2002) Added CodePiece parameter to classBlock so that '{' will be added to ClassCodePiece. Version tracking now done with following ID: $Id: JavaRecognizer.java,v 1.10 2003/03/27 11:42:54 lepekhine Exp $ BUG: Doesn't like boolean.class! class Test { public static void main( String args[] ) { if (boolean.class.equals(boolean.class)) { System.out.println("works"); } } } This grammar is in the PUBLIC DOMAIN

See Also:
Serialized Form

Field Summary
static java.lang.String[] _tokenNames
           
static BitSet _tokenSet_0
           
static BitSet _tokenSet_1
           
static BitSet _tokenSet_10
           
static BitSet _tokenSet_11
           
static BitSet _tokenSet_12
           
static BitSet _tokenSet_13
           
static BitSet _tokenSet_14
           
static BitSet _tokenSet_15
           
static BitSet _tokenSet_16
           
static BitSet _tokenSet_17
           
static BitSet _tokenSet_18
           
static BitSet _tokenSet_19
           
static BitSet _tokenSet_2
           
static BitSet _tokenSet_3
           
static BitSet _tokenSet_4
           
static BitSet _tokenSet_5
           
static BitSet _tokenSet_6
           
static BitSet _tokenSet_7
           
static BitSet _tokenSet_8
           
static BitSet _tokenSet_9
           
 
Fields inherited from interface org.argouml.language.java.generator.JavaTokenTypes
ABSTRACT, ARRAY_DECLARATOR, ARRAY_INIT, ASSIGN, BAND, BAND_ASSIGN, BLOCK, BNOT, BOR, BOR_ASSIGN, BSR, BSR_ASSIGN, BXOR, BXOR_ASSIGN, CASE_GROUP, CHAR_LITERAL, CLASS_DEF, COLON, COMMA, CTOR_DEF, DEC, DIV, DIV_ASSIGN, DOT, ELIST, EMPTY_STAT, EOF, EQUAL, ESC, EXPONENT, EXPR, EXTENDS_CLAUSE, FINAL, FLOAT_SUFFIX, FOR_CONDITION, FOR_INIT, FOR_ITERATOR, GE, GT, HEX_DIGIT, IDENT, IMPLEMENTS_CLAUSE, IMPORT, INC, INDEX_OP, INSTANCE_INIT, INTERFACE_DEF, JAVADOC, LABELED_STAT, LAND, LBRACK, LCURLY, LE, LITERAL_boolean, LITERAL_break, LITERAL_byte, LITERAL_case, LITERAL_catch, LITERAL_char, LITERAL_class, LITERAL_continue, LITERAL_default, LITERAL_do, LITERAL_double, LITERAL_else, LITERAL_extends, LITERAL_false, LITERAL_finally, LITERAL_float, LITERAL_for, LITERAL_if, LITERAL_implements, LITERAL_import, LITERAL_instanceof, LITERAL_int, LITERAL_interface, LITERAL_long, LITERAL_native, LITERAL_new, LITERAL_null, LITERAL_package, LITERAL_private, LITERAL_protected, LITERAL_public, LITERAL_return, LITERAL_short, LITERAL_static, LITERAL_strictfp, LITERAL_super, LITERAL_switch, LITERAL_synchronized, LITERAL_this, LITERAL_throw, LITERAL_throws, LITERAL_transient, LITERAL_true, LITERAL_try, LITERAL_void, LITERAL_volatile, LITERAL_while, LNOT, LOR, LPAREN, LT, METHOD_CALL, METHOD_DEF, MINUS, MINUS_ASSIGN, ML_COMMENT, MOD, MOD_ASSIGN, MODIFIERS, NOT_EQUAL, NULL_TREE_LOOKAHEAD, NUM_FLOAT, NUM_INT, OBJBLOCK, PACKAGE_DEF, PARAMETER_DEF, PARAMETERS, PLUS, PLUS_ASSIGN, POST_DEC, POST_INC, QUESTION, RBRACK, RCURLY, RPAREN, SEMI, SL, SL_ASSIGN, SL_COMMENT, SLIST, SR, SR_ASSIGN, STAR, STAR_ASSIGN, STATIC_INIT, STRING_LITERAL, TYPE, TYPECAST, UNARY_MINUS, UNARY_PLUS, VARIABLE_DEF, VOCAB, WS
 
Constructor Summary
  JavaRecognizer(TokenBuffer tokenBuf)
           
protected JavaRecognizer(TokenBuffer tokenBuf, int k)
           
 
Method Summary
 void aCase()
           
 void additiveExpression()
           
 void andExpression()
           
 void argList()
           
 void arrayInitializer()
           
 void assignmentExpression()
           
 SimpleCodePiece builtInType()
           
 CompositeCodePiece builtInTypeSpec()
           
 void casesGroup()
           
 void caseSList()
           
 void classBlock(CompositeCodePiece header)
           
 void classDefinition(CodePiece preCode)
           
 CompositeCodePiece classTypeSpec()
           
 void compilationUnit(CodePieceCollector cpc)
           
 void compoundStatement()
           
 void conditionalExpression()
           
 void constant()
           
 void ctorHead(CompositeCodePiece doccp, CompositeCodePiece cp)
           
 void declaration()
          A declaration is the creation of a reference or primitive-type variable Create a separate Type/Var tree for each var in the var list.
 CompositeCodePiece declaratorBrackets()
           
 void equalityExpression()
           
 void exclusiveOrExpression()
           
 void expression()
           
 void expressionList()
           
 void field()
           
 void forCond()
           
 void forInit()
           
 void forIter()
           
 void handler()
           
 CompositeCodePiece identifier()
           
 void identifierStar()
           
 CompositeCodePiece implementsClause()
           
 void importDefinition()
           
 void inclusiveOrExpression()
           
 void initializer()
           
 void interfaceDefinition(CodePiece preCode)
           
 CompositeCodePiece interfaceExtends()
           
 void logicalAndExpression()
           
 void logicalOrExpression()
           
 CodePiece modifier()
           
 CompositeCodePiece modifiers()
           
 void multiplicativeExpression()
           
 void newArrayDeclarator()
           
 void newExpression()
          object instantiation.
 void packageDefinition()
           
 CompositeCodePiece parameterDeclaration()
           
 CompositeCodePiece parameterDeclarationList()
           
 void parameterDeclaratorBrackets()
           
 void parameterModifier()
           
 void postfixExpression()
           
 void primaryExpression()
           
 void relationalExpression()
           
 CompositeCodePiece returnTypeBrackersOnEndOfMethodHead()
           
 void shiftExpression()
           
 void statement()
           
 CompositeCodePiece superClassClause()
           
 void throwsClause()
           
 void tryBlock()
           
 CodePiece type()
           
 void typeDefinition()
           
 CodePiece typeSpec()
           
 void unaryExpression()
           
 void unaryExpressionNotPlusMinus()
           
 CompositeCodePiece variableDeclarator()
          Declaration of a variable.
 java.util.Vector variableDefinitions()
           
 CompositeCodePiece varInitializer()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_tokenNames

public static final java.lang.String[] _tokenNames

_tokenSet_0

public static final BitSet _tokenSet_0

_tokenSet_1

public static final BitSet _tokenSet_1

_tokenSet_2

public static final BitSet _tokenSet_2

_tokenSet_3

public static final BitSet _tokenSet_3

_tokenSet_4

public static final BitSet _tokenSet_4

_tokenSet_5

public static final BitSet _tokenSet_5

_tokenSet_6

public static final BitSet _tokenSet_6

_tokenSet_7

public static final BitSet _tokenSet_7

_tokenSet_8

public static final BitSet _tokenSet_8

_tokenSet_9

public static final BitSet _tokenSet_9

_tokenSet_10

public static final BitSet _tokenSet_10

_tokenSet_11

public static final BitSet _tokenSet_11

_tokenSet_12

public static final BitSet _tokenSet_12

_tokenSet_13

public static final BitSet _tokenSet_13

_tokenSet_14

public static final BitSet _tokenSet_14

_tokenSet_15

public static final BitSet _tokenSet_15

_tokenSet_16

public static final BitSet _tokenSet_16

_tokenSet_17

public static final BitSet _tokenSet_17

_tokenSet_18

public static final BitSet _tokenSet_18

_tokenSet_19

public static final BitSet _tokenSet_19
Constructor Detail

JavaRecognizer

protected JavaRecognizer(TokenBuffer tokenBuf,
                         int k)

JavaRecognizer

public JavaRecognizer(TokenBuffer tokenBuf)
Method Detail

compilationUnit

public final void compilationUnit(CodePieceCollector cpc)
                           throws RecognitionException,
                                  TokenStreamException
RecognitionException
TokenStreamException

packageDefinition

public final void packageDefinition()
                             throws RecognitionException,
                                    TokenStreamException
RecognitionException
TokenStreamException

importDefinition

public final void importDefinition()
                            throws RecognitionException,
                                   TokenStreamException
RecognitionException
TokenStreamException

typeDefinition

public final void typeDefinition()
                          throws RecognitionException,
                                 TokenStreamException
RecognitionException
TokenStreamException

identifier

public final CompositeCodePiece identifier()
                                    throws RecognitionException,
                                           TokenStreamException
RecognitionException
TokenStreamException

identifierStar

public final void identifierStar()
                          throws RecognitionException,
                                 TokenStreamException
RecognitionException
TokenStreamException

modifiers

public final CompositeCodePiece modifiers()
                                   throws RecognitionException,
                                          TokenStreamException
RecognitionException
TokenStreamException

classDefinition

public final void classDefinition(CodePiece preCode)
                           throws RecognitionException,
                                  TokenStreamException
RecognitionException
TokenStreamException

interfaceDefinition

public final void interfaceDefinition(CodePiece preCode)
                               throws RecognitionException,
                                      TokenStreamException
RecognitionException
TokenStreamException

declaration

public final void declaration()
                       throws RecognitionException,
                              TokenStreamException
A declaration is the creation of a reference or primitive-type variable Create a separate Type/Var tree for each var in the var list.

RecognitionException
TokenStreamException

typeSpec

public final CodePiece typeSpec()
                         throws RecognitionException,
                                TokenStreamException
RecognitionException
TokenStreamException

variableDefinitions

public final java.util.Vector variableDefinitions()
                                           throws RecognitionException,
                                                  TokenStreamException
RecognitionException
TokenStreamException

modifier

public final CodePiece modifier()
                         throws RecognitionException,
                                TokenStreamException
RecognitionException
TokenStreamException

classTypeSpec

public final CompositeCodePiece classTypeSpec()
                                       throws RecognitionException,
                                              TokenStreamException
RecognitionException
TokenStreamException

builtInTypeSpec

public final CompositeCodePiece builtInTypeSpec()
                                         throws RecognitionException,
                                                TokenStreamException
RecognitionException
TokenStreamException

builtInType

public final SimpleCodePiece builtInType()
                                  throws RecognitionException,
                                         TokenStreamException
RecognitionException
TokenStreamException

type

public final CodePiece type()
                     throws RecognitionException,
                            TokenStreamException
RecognitionException
TokenStreamException

superClassClause

public final CompositeCodePiece superClassClause()
                                          throws RecognitionException,
                                                 TokenStreamException
RecognitionException
TokenStreamException

implementsClause

public final CompositeCodePiece implementsClause()
                                          throws RecognitionException,
                                                 TokenStreamException
RecognitionException
TokenStreamException

classBlock

public final void classBlock(CompositeCodePiece header)
                      throws RecognitionException,
                             TokenStreamException
RecognitionException
TokenStreamException

interfaceExtends

public final CompositeCodePiece interfaceExtends()
                                          throws RecognitionException,
                                                 TokenStreamException
RecognitionException
TokenStreamException

field

public final void field()
                 throws RecognitionException,
                        TokenStreamException
RecognitionException
TokenStreamException

ctorHead

public final void ctorHead(CompositeCodePiece doccp,
                           CompositeCodePiece cp)
                    throws RecognitionException,
                           TokenStreamException
RecognitionException
TokenStreamException

compoundStatement

public final void compoundStatement()
                             throws RecognitionException,
                                    TokenStreamException
RecognitionException
TokenStreamException

parameterDeclarationList

public final CompositeCodePiece parameterDeclarationList()
                                                  throws RecognitionException,
                                                         TokenStreamException
RecognitionException
TokenStreamException

returnTypeBrackersOnEndOfMethodHead

public final CompositeCodePiece returnTypeBrackersOnEndOfMethodHead()
                                                             throws RecognitionException,
                                                                    TokenStreamException
RecognitionException
TokenStreamException

throwsClause

public final void throwsClause()
                        throws RecognitionException,
                               TokenStreamException
RecognitionException
TokenStreamException

variableDeclarator

public final CompositeCodePiece variableDeclarator()
                                            throws RecognitionException,
                                                   TokenStreamException
Declaration of a variable. This can be a class/instance variable, or a local variable in a method It can also include possible initialization.

RecognitionException
TokenStreamException

declaratorBrackets

public final CompositeCodePiece declaratorBrackets()
                                            throws RecognitionException,
                                                   TokenStreamException
RecognitionException
TokenStreamException

varInitializer

public final CompositeCodePiece varInitializer()
                                        throws RecognitionException,
                                               TokenStreamException
RecognitionException
TokenStreamException

initializer

public final void initializer()
                       throws RecognitionException,
                              TokenStreamException
RecognitionException
TokenStreamException

arrayInitializer

public final void arrayInitializer()
                            throws RecognitionException,
                                   TokenStreamException
RecognitionException
TokenStreamException

expression

public final void expression()
                      throws RecognitionException,
                             TokenStreamException
RecognitionException
TokenStreamException

parameterDeclaration

public final CompositeCodePiece parameterDeclaration()
                                              throws RecognitionException,
                                                     TokenStreamException
RecognitionException
TokenStreamException

parameterModifier

public final void parameterModifier()
                             throws RecognitionException,
                                    TokenStreamException
RecognitionException
TokenStreamException

parameterDeclaratorBrackets

public final void parameterDeclaratorBrackets()
                                       throws RecognitionException,
                                              TokenStreamException
RecognitionException
TokenStreamException

statement

public final void statement()
                     throws RecognitionException,
                            TokenStreamException
RecognitionException
TokenStreamException

forInit

public final void forInit()
                   throws RecognitionException,
                          TokenStreamException
RecognitionException
TokenStreamException

forCond

public final void forCond()
                   throws RecognitionException,
                          TokenStreamException
RecognitionException
TokenStreamException

forIter

public final void forIter()
                   throws RecognitionException,
                          TokenStreamException
RecognitionException
TokenStreamException

casesGroup

public final void casesGroup()
                      throws RecognitionException,
                             TokenStreamException
RecognitionException
TokenStreamException

tryBlock

public final void tryBlock()
                    throws RecognitionException,
                           TokenStreamException
RecognitionException
TokenStreamException

aCase

public final void aCase()
                 throws RecognitionException,
                        TokenStreamException
RecognitionException
TokenStreamException

caseSList

public final void caseSList()
                     throws RecognitionException,
                            TokenStreamException
RecognitionException
TokenStreamException

expressionList

public final void expressionList()
                          throws RecognitionException,
                                 TokenStreamException
RecognitionException
TokenStreamException

handler

public final void handler()
                   throws RecognitionException,
                          TokenStreamException
RecognitionException
TokenStreamException

assignmentExpression

public final void assignmentExpression()
                                throws RecognitionException,
                                       TokenStreamException
RecognitionException
TokenStreamException

conditionalExpression

public final void conditionalExpression()
                                 throws RecognitionException,
                                        TokenStreamException
RecognitionException
TokenStreamException

logicalOrExpression

public final void logicalOrExpression()
                               throws RecognitionException,
                                      TokenStreamException
RecognitionException
TokenStreamException

logicalAndExpression

public final void logicalAndExpression()
                                throws RecognitionException,
                                       TokenStreamException
RecognitionException
TokenStreamException

inclusiveOrExpression

public final void inclusiveOrExpression()
                                 throws RecognitionException,
                                        TokenStreamException
RecognitionException
TokenStreamException

exclusiveOrExpression

public final void exclusiveOrExpression()
                                 throws RecognitionException,
                                        TokenStreamException
RecognitionException
TokenStreamException

andExpression

public final void andExpression()
                         throws RecognitionException,
                                TokenStreamException
RecognitionException
TokenStreamException

equalityExpression

public final void equalityExpression()
                              throws RecognitionException,
                                     TokenStreamException
RecognitionException
TokenStreamException

relationalExpression

public final void relationalExpression()
                                throws RecognitionException,
                                       TokenStreamException
RecognitionException
TokenStreamException

shiftExpression

public final void shiftExpression()
                           throws RecognitionException,
                                  TokenStreamException
RecognitionException
TokenStreamException

additiveExpression

public final void additiveExpression()
                              throws RecognitionException,
                                     TokenStreamException
RecognitionException
TokenStreamException

multiplicativeExpression

public final void multiplicativeExpression()
                                    throws RecognitionException,
                                           TokenStreamException
RecognitionException
TokenStreamException

unaryExpression

public final void unaryExpression()
                           throws RecognitionException,
                                  TokenStreamException
RecognitionException
TokenStreamException

unaryExpressionNotPlusMinus

public final void unaryExpressionNotPlusMinus()
                                       throws RecognitionException,
                                              TokenStreamException
RecognitionException
TokenStreamException

postfixExpression

public final void postfixExpression()
                             throws RecognitionException,
                                    TokenStreamException
RecognitionException
TokenStreamException

primaryExpression

public final void primaryExpression()
                             throws RecognitionException,
                                    TokenStreamException
RecognitionException
TokenStreamException

newExpression

public final void newExpression()
                         throws RecognitionException,
                                TokenStreamException
object instantiation. Trees are built as illustrated by the following input/tree pairs: new T() new | T -- ELIST | arg1 -- arg2 -- .. -- argn new int[] new | int -- ARRAY_DECLARATOR new int[] {1,2} new | int -- ARRAY_DECLARATOR -- ARRAY_INIT | EXPR -- EXPR | | 1 2 new int[3] new | int -- ARRAY_DECLARATOR | EXPR | 3 new int[1][2] new | int -- ARRAY_DECLARATOR | ARRAY_DECLARATOR -- EXPR | | EXPR 1 | 2

RecognitionException
TokenStreamException

argList

public final void argList()
                   throws RecognitionException,
                          TokenStreamException
RecognitionException
TokenStreamException

constant

public final void constant()
                    throws RecognitionException,
                           TokenStreamException
RecognitionException
TokenStreamException

newArrayDeclarator

public final void newArrayDeclarator()
                              throws RecognitionException,
                                     TokenStreamException
RecognitionException
TokenStreamException


ArgoUML © 1996-2003 (20030919)ArgoUML Project HomeArgoUML Cookbook