Methods Summary |
---|
public final void | alternative()
boolean altAutoGen = true;
{
switch ( LA(1)) {
case BANG:
{
match(BANG);
if ( inputState.guessing==0 ) {
altAutoGen=false;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case LPAREN:
case RPAREN:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.beginAlt(altAutoGen);
}
{
_loop91:
do {
if ((_tokenSet_2.member(LA(1)))) {
element();
}
else {
break _loop91;
}
} while (true);
}
{
switch ( LA(1)) {
case LITERAL_exception:
{
exceptionSpecNoLabel();
break;
}
case SEMI:
case OR:
case RPAREN:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.endAlt();
}
|
public final int | ast_type_spec()
int autoGen ;
autoGen = GrammarElement.AUTO_GEN_NONE;
{
switch ( LA(1)) {
case CARET:
{
match(CARET);
if ( inputState.guessing==0 ) {
autoGen = GrammarElement.AUTO_GEN_CARET;
}
break;
}
case BANG:
{
match(BANG);
if ( inputState.guessing==0 ) {
autoGen = GrammarElement.AUTO_GEN_BANG;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case ARG_ACTION:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
return autoGen ;
|
public final void | block()
if ( inputState.guessing==0 ) {
blockNesting++;
}
alternative();
{
_loop87:
do {
if ((LA(1)==OR)) {
match(OR);
alternative();
}
else {
break _loop87;
}
} while (true);
}
if ( inputState.guessing==0 ) {
blockNesting--;
}
|
public final persistence.antlr.collections.impl.BitSet | charSet()
BitSet b ;
b = null;
BitSet tmpSet = null;
b=setBlockElement();
{
_loop34:
do {
if ((LA(1)==OR)) {
match(OR);
tmpSet=setBlockElement();
if ( inputState.guessing==0 ) {
b.orInPlace(tmpSet);
}
}
else {
break _loop34;
}
} while (true);
}
return b ;
|
private void | checkForMissingEndRule(persistence.antlr.Token label)
if ( label.getColumn()==1 ) {
antlrTool.warning("did you forget to terminate previous rule?", getFilename(), label.getLine(), label.getColumn());
}
|
public final void | classDef()
Token a = null;
Token d = null;
String doc=null;
try { // for error handling
{
switch ( LA(1)) {
case ACTION:
{
a = LT(1);
match(ACTION);
if ( inputState.guessing==0 ) {
behavior.refPreambleAction(a);
}
break;
}
case DOC_COMMENT:
case LITERAL_lexclass:
case LITERAL_class:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case DOC_COMMENT:
{
d = LT(1);
match(DOC_COMMENT);
if ( inputState.guessing==0 ) {
doc=d.getText();
}
break;
}
case LITERAL_lexclass:
case LITERAL_class:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
boolean synPredMatched13 = false;
if (((LA(1)==LITERAL_lexclass||LA(1)==LITERAL_class) && (LA(2)==TOKEN_REF||LA(2)==RULE_REF))) {
int _m13 = mark();
synPredMatched13 = true;
inputState.guessing++;
try {
{
switch ( LA(1)) {
case LITERAL_lexclass:
{
match(LITERAL_lexclass);
break;
}
case LITERAL_class:
{
match(LITERAL_class);
id();
match(LITERAL_extends);
match(LITERAL_Lexer);
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
}
catch (RecognitionException pe) {
synPredMatched13 = false;
}
rewind(_m13);
inputState.guessing--;
}
if ( synPredMatched13 ) {
lexerSpec(doc);
}
else {
boolean synPredMatched15 = false;
if (((LA(1)==LITERAL_class) && (LA(2)==TOKEN_REF||LA(2)==RULE_REF))) {
int _m15 = mark();
synPredMatched15 = true;
inputState.guessing++;
try {
{
match(LITERAL_class);
id();
match(LITERAL_extends);
match(LITERAL_TreeParser);
}
}
catch (RecognitionException pe) {
synPredMatched15 = false;
}
rewind(_m15);
inputState.guessing--;
}
if ( synPredMatched15 ) {
treeParserSpec(doc);
}
else if ((LA(1)==LITERAL_class) && (LA(2)==TOKEN_REF||LA(2)==RULE_REF)) {
parserSpec(doc);
}
else {
throw new NoViableAltException(LT(1), getFilename());
}
}
}
rules();
if ( inputState.guessing==0 ) {
behavior.endGrammar();
}
}
catch (RecognitionException ex) {
if (inputState.guessing==0) {
if ( ex instanceof NoViableAltException ) {
NoViableAltException e = (NoViableAltException)ex;
// RK: These probably generate inconsequent error messages...
// have to see how this comes out..
if ( e.token.getType()==DOC_COMMENT ) {
reportError(ex, "JAVADOC comments may only prefix rules and grammars");
}
else {
reportError(ex, "rule classDef trapped:\n"+ex.toString());
}
}
else {
reportError(ex, "rule classDef trapped:\n"+ex.toString());
}
behavior.abortGrammar();
boolean consuming = true;
// consume everything until the next class definition or EOF
while (consuming) {
consume();
switch(LA(1)) {
case LITERAL_class:
case LITERAL_lexclass:
case EOF:
consuming = false;
break;
}
}
} else {
throw ex;
}
}
|
public final void | ebnf(persistence.antlr.Token label, boolean not)
Token lp = null;
Token aa = null;
Token ab = null;
lp = LT(1);
match(LPAREN);
if ( inputState.guessing==0 ) {
behavior.beginSubRule(label, lp, not);
}
{
if ((LA(1)==OPTIONS)) {
subruleOptionsSpec();
{
switch ( LA(1)) {
case ACTION:
{
aa = LT(1);
match(ACTION);
if ( inputState.guessing==0 ) {
behavior.refInitAction(aa);
}
break;
}
case COLON:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
match(COLON);
}
else if ((LA(1)==ACTION) && (LA(2)==COLON)) {
ab = LT(1);
match(ACTION);
if ( inputState.guessing==0 ) {
behavior.refInitAction(ab);
}
match(COLON);
}
else if ((_tokenSet_9.member(LA(1))) && (_tokenSet_10.member(LA(2)))) {
}
else {
throw new NoViableAltException(LT(1), getFilename());
}
}
block();
match(RPAREN);
{
switch ( LA(1)) {
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case BANG:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case QUESTION:
case STAR:
case PLUS:
case WILDCARD:
{
{
switch ( LA(1)) {
case QUESTION:
{
match(QUESTION);
if ( inputState.guessing==0 ) {
behavior.optionalSubRule();
}
break;
}
case STAR:
{
match(STAR);
if ( inputState.guessing==0 ) {
behavior.zeroOrMoreSubRule();
}
break;
}
case PLUS:
{
match(PLUS);
if ( inputState.guessing==0 ) {
behavior.oneOrMoreSubRule();
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case BANG:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case BANG:
{
match(BANG);
if ( inputState.guessing==0 ) {
behavior.noASTSubRule();
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
break;
}
case IMPLIES:
{
match(IMPLIES);
if ( inputState.guessing==0 ) {
behavior.synPred();
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.endSubRule();
}
|
public final void | element()
elementNoOptionSpec();
{
switch ( LA(1)) {
case OPEN_ELEMENT_OPTION:
{
elementOptionSpec();
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case LPAREN:
case RPAREN:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
|
public final void | elementNoOptionSpec()
Token rr = null;
Token aa = null;
Token tr = null;
Token aa2 = null;
Token r2 = null;
Token aa3 = null;
Token a = null;
Token p = null;
Token label = null;
Token assignId = null;
Token args = null;
int autoGen = GrammarElement.AUTO_GEN_NONE;
switch ( LA(1)) {
case ACTION:
{
a = LT(1);
match(ACTION);
if ( inputState.guessing==0 ) {
behavior.refAction(a);
}
break;
}
case SEMPRED:
{
p = LT(1);
match(SEMPRED);
if ( inputState.guessing==0 ) {
behavior.refSemPred(p);
}
break;
}
case TREE_BEGIN:
{
tree();
break;
}
default:
if ((LA(1)==TOKEN_REF||LA(1)==RULE_REF) && (LA(2)==ASSIGN)) {
assignId=id();
match(ASSIGN);
{
if ((LA(1)==TOKEN_REF||LA(1)==RULE_REF) && (LA(2)==COLON)) {
label=id();
match(COLON);
if ( inputState.guessing==0 ) {
checkForMissingEndRule(label);
}
}
else if ((LA(1)==TOKEN_REF||LA(1)==RULE_REF) && (_tokenSet_3.member(LA(2)))) {
}
else {
throw new NoViableAltException(LT(1), getFilename());
}
}
{
switch ( LA(1)) {
case RULE_REF:
{
rr = LT(1);
match(RULE_REF);
{
switch ( LA(1)) {
case ARG_ACTION:
{
aa = LT(1);
match(ARG_ACTION);
if ( inputState.guessing==0 ) {
args=aa;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case BANG:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case BANG:
{
match(BANG);
if ( inputState.guessing==0 ) {
autoGen = GrammarElement.AUTO_GEN_BANG;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.refRule(assignId, rr, label, args, autoGen);
}
break;
}
case TOKEN_REF:
{
tr = LT(1);
match(TOKEN_REF);
{
switch ( LA(1)) {
case ARG_ACTION:
{
aa2 = LT(1);
match(ARG_ACTION);
if ( inputState.guessing==0 ) {
args=aa2;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.refToken(assignId, tr, label, args, false, autoGen, lastInRule());
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
}
else if ((_tokenSet_4.member(LA(1))) && (_tokenSet_5.member(LA(2)))) {
{
if ((LA(1)==TOKEN_REF||LA(1)==RULE_REF) && (LA(2)==COLON)) {
label=id();
match(COLON);
if ( inputState.guessing==0 ) {
checkForMissingEndRule(label);
}
}
else if ((_tokenSet_4.member(LA(1))) && (_tokenSet_6.member(LA(2)))) {
}
else {
throw new NoViableAltException(LT(1), getFilename());
}
}
{
switch ( LA(1)) {
case RULE_REF:
{
r2 = LT(1);
match(RULE_REF);
{
switch ( LA(1)) {
case ARG_ACTION:
{
aa3 = LT(1);
match(ARG_ACTION);
if ( inputState.guessing==0 ) {
args=aa3;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case BANG:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case BANG:
{
match(BANG);
if ( inputState.guessing==0 ) {
autoGen = GrammarElement.AUTO_GEN_BANG;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.refRule(assignId, r2, label, args, autoGen);
}
break;
}
case NOT_OP:
{
match(NOT_OP);
{
switch ( LA(1)) {
case CHAR_LITERAL:
case TOKEN_REF:
{
notTerminal(label);
break;
}
case LPAREN:
{
ebnf(label,true);
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
break;
}
case LPAREN:
{
ebnf(label,false);
break;
}
default:
if ((LA(1)==STRING_LITERAL||LA(1)==CHAR_LITERAL||LA(1)==TOKEN_REF) && (LA(2)==RANGE)) {
range(label);
}
else if ((_tokenSet_7.member(LA(1))) && (_tokenSet_8.member(LA(2)))) {
terminal(label);
}
else {
throw new NoViableAltException(LT(1), getFilename());
}
}
}
}
else {
throw new NoViableAltException(LT(1), getFilename());
}
}
|
public final void | elementOptionSpec()
Token o=null, v=null;
match(OPEN_ELEMENT_OPTION);
o=id();
match(ASSIGN);
v=optionValue();
if ( inputState.guessing==0 ) {
behavior.refElementOption(o,v);
}
{
_loop108:
do {
if ((LA(1)==SEMI)) {
match(SEMI);
o=id();
match(ASSIGN);
v=optionValue();
if ( inputState.guessing==0 ) {
behavior.refElementOption(o,v);
}
}
else {
break _loop108;
}
} while (true);
}
match(CLOSE_ELEMENT_OPTION);
|
public final void | exceptionGroup()
if ( inputState.guessing==0 ) {
behavior.beginExceptionGroup();
}
{
int _cnt95=0;
_loop95:
do {
if ((LA(1)==LITERAL_exception)) {
exceptionSpec();
}
else {
if ( _cnt95>=1 ) { break _loop95; } else {throw new NoViableAltException(LT(1), getFilename());}
}
_cnt95++;
} while (true);
}
if ( inputState.guessing==0 ) {
behavior.endExceptionGroup();
}
|
public final void | exceptionHandler()
Token a1 = null;
Token a2 = null;
Token exType; Token exName;
match(LITERAL_catch);
a1 = LT(1);
match(ARG_ACTION);
a2 = LT(1);
match(ACTION);
if ( inputState.guessing==0 ) {
behavior.refExceptionHandler(a1, a2);
}
|
public final void | exceptionSpec()
Token aa = null;
Token labelAction = null;
match(LITERAL_exception);
{
switch ( LA(1)) {
case ARG_ACTION:
{
aa = LT(1);
match(ARG_ACTION);
if ( inputState.guessing==0 ) {
labelAction = aa;
}
break;
}
case EOF:
case ACTION:
case DOC_COMMENT:
case LITERAL_lexclass:
case LITERAL_class:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case LITERAL_exception:
case LITERAL_catch:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.beginExceptionSpec(labelAction);
}
{
_loop99:
do {
if ((LA(1)==LITERAL_catch)) {
exceptionHandler();
}
else {
break _loop99;
}
} while (true);
}
if ( inputState.guessing==0 ) {
behavior.endExceptionSpec();
}
|
public final void | exceptionSpecNoLabel()
match(LITERAL_exception);
if ( inputState.guessing==0 ) {
behavior.beginExceptionSpec(null);
}
{
_loop102:
do {
if ((LA(1)==LITERAL_catch)) {
exceptionHandler();
}
else {
break _loop102;
}
} while (true);
}
if ( inputState.guessing==0 ) {
behavior.endExceptionSpec();
}
|
public final void | fileOptionsSpec()
Token idTok; Token value;
match(OPTIONS);
{
_loop18:
do {
if ((LA(1)==TOKEN_REF||LA(1)==RULE_REF)) {
idTok=id();
match(ASSIGN);
value=optionValue();
if ( inputState.guessing==0 ) {
behavior.setFileOption(idTok, value,getInputState().filename);
}
match(SEMI);
}
else {
break _loop18;
}
} while (true);
}
match(RCURLY);
|
public final void | grammar()
Token n = null;
Token h = null;
try { // for error handling
{
_loop4:
do {
if ((LA(1)==LITERAL_header)) {
if ( inputState.guessing==0 ) {
n = null; // RK: prevent certain orders of header actions
// overwriting eachother.
}
match(LITERAL_header);
{
switch ( LA(1)) {
case STRING_LITERAL:
{
n = LT(1);
match(STRING_LITERAL);
break;
}
case ACTION:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
h = LT(1);
match(ACTION);
if ( inputState.guessing==0 ) {
// store the header action
// FIXME: 'n' should be checked for validity
behavior.refHeaderAction(n,h);
}
}
else {
break _loop4;
}
} while (true);
}
{
switch ( LA(1)) {
case OPTIONS:
{
fileOptionsSpec();
break;
}
case EOF:
case ACTION:
case DOC_COMMENT:
case LITERAL_lexclass:
case LITERAL_class:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
_loop7:
do {
if (((LA(1) >= ACTION && LA(1) <= LITERAL_class))) {
classDef();
}
else {
break _loop7;
}
} while (true);
}
match(Token.EOF_TYPE);
}
catch (RecognitionException ex) {
if (inputState.guessing==0) {
reportError(ex, "rule grammar trapped:\n"+ex.toString());
consumeUntil(EOF);
} else {
throw ex;
}
}
|
public final persistence.antlr.Token | id()
Token idTok ;
Token a = null;
Token b = null;
idTok = null;
switch ( LA(1)) {
case TOKEN_REF:
{
a = LT(1);
match(TOKEN_REF);
if ( inputState.guessing==0 ) {
idTok = a;
}
break;
}
case RULE_REF:
{
b = LT(1);
match(RULE_REF);
if ( inputState.guessing==0 ) {
idTok = b;
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
return idTok ;
|
private boolean | lastInRule()
if ( blockNesting==0 && (LA(1)==SEMI || LA(1)==LITERAL_exception || LA(1)==OR) ) {
return true;
}
return false;
|
public final void | lexerOptionsSpec()
Token idTok; Token value; BitSet b;
match(OPTIONS);
{
_loop27:
do {
switch ( LA(1)) {
case LITERAL_charVocabulary:
{
match(LITERAL_charVocabulary);
match(ASSIGN);
b=charSet();
match(SEMI);
if ( inputState.guessing==0 ) {
behavior.setCharVocabulary(b);
}
break;
}
case TOKEN_REF:
case RULE_REF:
{
idTok=id();
match(ASSIGN);
value=optionValue();
if ( inputState.guessing==0 ) {
behavior.setGrammarOption(idTok, value);
}
match(SEMI);
break;
}
default:
{
break _loop27;
}
}
} while (true);
}
match(RCURLY);
|
public final void | lexerSpec(java.lang.String doc)
Token lc = null;
Token a = null;
Token idTok;
String sup=null;
{
switch ( LA(1)) {
case LITERAL_lexclass:
{
lc = LT(1);
match(LITERAL_lexclass);
idTok=id();
if ( inputState.guessing==0 ) {
antlrTool.warning("lexclass' is deprecated; use 'class X extends Lexer'",
getFilename(), lc.getLine(), lc.getColumn());
// System.out.println("warning: line " + lc.getLine() + ": 'lexclass' is deprecated; use 'class X extends Lexer'");
}
break;
}
case LITERAL_class:
{
match(LITERAL_class);
idTok=id();
match(LITERAL_extends);
match(LITERAL_Lexer);
{
switch ( LA(1)) {
case LPAREN:
{
sup=superClass();
break;
}
case SEMI:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.startLexer(getFilename(), idTok,sup,doc);
}
match(SEMI);
{
switch ( LA(1)) {
case OPTIONS:
{
lexerOptionsSpec();
break;
}
case ACTION:
case DOC_COMMENT:
case TOKENS:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.endOptions();
}
{
switch ( LA(1)) {
case TOKENS:
{
tokensSpec();
break;
}
case ACTION:
case DOC_COMMENT:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case ACTION:
{
a = LT(1);
match(ACTION);
if ( inputState.guessing==0 ) {
behavior.refMemberAction(a);
}
break;
}
case DOC_COMMENT:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
|
private static final long[] | mk_tokenSet_0()
long[] data = { 2206556225792L, 0L};
return data;
|
private static final long[] | mk_tokenSet_1()
long[] data = { 2472844214400L, 0L};
return data;
|
private static final long[] | mk_tokenSet_10()
long[] data = { 2251345007067328L, 0L};
return data;
|
private static final long[] | mk_tokenSet_11()
long[] data = { 1721861130420416L, 0L};
return data;
|
private static final long[] | mk_tokenSet_2()
long[] data = { 1158885407195328L, 0L};
return data;
|
private static final long[] | mk_tokenSet_3()
long[] data = { 1159461236965568L, 0L};
return data;
|
private static final long[] | mk_tokenSet_4()
long[] data = { 1132497128128576L, 0L};
return data;
|
private static final long[] | mk_tokenSet_5()
long[] data = { 1722479914074304L, 0L};
return data;
|
private static final long[] | mk_tokenSet_6()
long[] data = { 1722411194597568L, 0L};
return data;
|
private static final long[] | mk_tokenSet_7()
long[] data = { 1125899924144192L, 0L};
return data;
|
private static final long[] | mk_tokenSet_8()
long[] data = { 1722411190386880L, 0L};
return data;
|
private static final long[] | mk_tokenSet_9()
long[] data = { 1159444023476416L, 0L};
return data;
|
public final void | notTerminal(persistence.antlr.Token label)
Token cl = null;
Token tr = null;
int autoGen=GrammarElement.AUTO_GEN_NONE;
switch ( LA(1)) {
case CHAR_LITERAL:
{
cl = LT(1);
match(CHAR_LITERAL);
{
switch ( LA(1)) {
case BANG:
{
match(BANG);
if ( inputState.guessing==0 ) {
autoGen = GrammarElement.AUTO_GEN_BANG;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.refCharLiteral(cl, label, true, autoGen, lastInRule());
}
break;
}
case TOKEN_REF:
{
tr = LT(1);
match(TOKEN_REF);
autoGen=ast_type_spec();
if ( inputState.guessing==0 ) {
behavior.refToken(null, tr, label, null, true, autoGen, lastInRule());
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
|
public final persistence.antlr.Token | optionValue()
Token retval ;
Token sl = null;
Token cl = null;
Token il = null;
retval = null;
switch ( LA(1)) {
case TOKEN_REF:
case RULE_REF:
{
retval=qualifiedID();
break;
}
case STRING_LITERAL:
{
sl = LT(1);
match(STRING_LITERAL);
if ( inputState.guessing==0 ) {
retval = sl;
}
break;
}
case CHAR_LITERAL:
{
cl = LT(1);
match(CHAR_LITERAL);
if ( inputState.guessing==0 ) {
retval = cl;
}
break;
}
case INT:
{
il = LT(1);
match(INT);
if ( inputState.guessing==0 ) {
retval = il;
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
return retval ;
|
public final void | parserOptionsSpec()
Token idTok; Token value;
match(OPTIONS);
{
_loop21:
do {
if ((LA(1)==TOKEN_REF||LA(1)==RULE_REF)) {
idTok=id();
match(ASSIGN);
value=optionValue();
if ( inputState.guessing==0 ) {
behavior.setGrammarOption(idTok, value);
}
match(SEMI);
}
else {
break _loop21;
}
} while (true);
}
match(RCURLY);
|
public final void | parserSpec(java.lang.String doc)
Token a = null;
Token idTok;
String sup=null;
match(LITERAL_class);
idTok=id();
{
switch ( LA(1)) {
case LITERAL_extends:
{
match(LITERAL_extends);
match(LITERAL_Parser);
{
switch ( LA(1)) {
case LPAREN:
{
sup=superClass();
break;
}
case SEMI:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
break;
}
case SEMI:
{
if ( inputState.guessing==0 ) {
antlrTool.warning("use 'class X extends Parser'", getFilename(), idTok.getLine(), idTok.getColumn());
// System.out.println("warning: line " +
// idTok.getLine() + ": use 'class X extends Parser'");
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.startParser(getFilename(), idTok, sup, doc);
}
match(SEMI);
{
switch ( LA(1)) {
case OPTIONS:
{
parserOptionsSpec();
break;
}
case ACTION:
case DOC_COMMENT:
case TOKENS:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.endOptions();
}
{
switch ( LA(1)) {
case TOKENS:
{
tokensSpec();
break;
}
case ACTION:
case DOC_COMMENT:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case ACTION:
{
a = LT(1);
match(ACTION);
if ( inputState.guessing==0 ) {
behavior.refMemberAction(a);
}
break;
}
case DOC_COMMENT:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
|
public final persistence.antlr.Token | qualifiedID()Match a.b.c.d qualified ids; WILDCARD here is overloaded as
id separator; that is, I need a reference to the '.' token.
Token qidTok=null;
StringBuffer buf = new StringBuffer(30);
Token a;
a=id();
if ( inputState.guessing==0 ) {
buf.append(a.getText());
}
{
_loop144:
do {
if ((LA(1)==WILDCARD)) {
match(WILDCARD);
a=id();
if ( inputState.guessing==0 ) {
buf.append('."); buf.append(a.getText());
}
}
else {
break _loop144;
}
} while (true);
}
if ( inputState.guessing==0 ) {
// can use either TOKEN_REF or RULE_REF; should
// really create a QID or something instead.
qidTok = new CommonToken(TOKEN_REF, buf.toString());
qidTok.setLine(a.getLine());
}
return qidTok;
|
public final void | range(persistence.antlr.Token label)
Token crLeft = null;
Token crRight = null;
Token t = null;
Token u = null;
Token v = null;
Token w = null;
Token trLeft=null;
Token trRight=null;
int autoGen=GrammarElement.AUTO_GEN_NONE;
switch ( LA(1)) {
case CHAR_LITERAL:
{
crLeft = LT(1);
match(CHAR_LITERAL);
match(RANGE);
crRight = LT(1);
match(CHAR_LITERAL);
{
switch ( LA(1)) {
case BANG:
{
match(BANG);
if ( inputState.guessing==0 ) {
autoGen = GrammarElement.AUTO_GEN_BANG;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.refCharRange(crLeft, crRight, label, autoGen, lastInRule());
}
break;
}
case STRING_LITERAL:
case TOKEN_REF:
{
{
switch ( LA(1)) {
case TOKEN_REF:
{
t = LT(1);
match(TOKEN_REF);
if ( inputState.guessing==0 ) {
trLeft=t;
}
break;
}
case STRING_LITERAL:
{
u = LT(1);
match(STRING_LITERAL);
if ( inputState.guessing==0 ) {
trLeft=u;
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
match(RANGE);
{
switch ( LA(1)) {
case TOKEN_REF:
{
v = LT(1);
match(TOKEN_REF);
if ( inputState.guessing==0 ) {
trRight=v;
}
break;
}
case STRING_LITERAL:
{
w = LT(1);
match(STRING_LITERAL);
if ( inputState.guessing==0 ) {
trRight=w;
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
autoGen=ast_type_spec();
if ( inputState.guessing==0 ) {
behavior.refTokenRange(trLeft, trRight, label, autoGen, lastInRule());
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
|
public void | reportError(java.lang.String s)
antlrTool.error(s, getFilename(), -1, -1);
|
public void | reportError(persistence.antlr.RecognitionException e)
reportError(e, e.getErrorMessage());
|
public void | reportError(persistence.antlr.RecognitionException e, java.lang.String s)
antlrTool.error(s, e.getFilename(), e.getLine(), e.getColumn());
|
public void | reportWarning(java.lang.String s)
antlrTool.warning(s, getFilename(), -1, -1);
|
public final void | rootNode()
Token label = null;
{
if ((LA(1)==TOKEN_REF||LA(1)==RULE_REF) && (LA(2)==COLON)) {
label=id();
match(COLON);
if ( inputState.guessing==0 ) {
checkForMissingEndRule(label);
}
}
else if ((_tokenSet_7.member(LA(1))) && (_tokenSet_11.member(LA(2)))) {
}
else {
throw new NoViableAltException(LT(1), getFilename());
}
}
terminal(label);
|
public final void | rule()
Token d = null;
Token p1 = null;
Token p2 = null;
Token p3 = null;
Token aa = null;
Token rt = null;
Token a = null;
String access="public";
Token idTok;
String doc=null;
boolean ruleAutoGen = true;
blockNesting = -1; // block increments, so -1 to make rule at level 0
{
switch ( LA(1)) {
case DOC_COMMENT:
{
d = LT(1);
match(DOC_COMMENT);
if ( inputState.guessing==0 ) {
doc=d.getText();
}
break;
}
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case LITERAL_protected:
{
p1 = LT(1);
match(LITERAL_protected);
if ( inputState.guessing==0 ) {
access=p1.getText();
}
break;
}
case LITERAL_public:
{
p2 = LT(1);
match(LITERAL_public);
if ( inputState.guessing==0 ) {
access=p2.getText();
}
break;
}
case LITERAL_private:
{
p3 = LT(1);
match(LITERAL_private);
if ( inputState.guessing==0 ) {
access=p3.getText();
}
break;
}
case TOKEN_REF:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
idTok=id();
{
switch ( LA(1)) {
case BANG:
{
match(BANG);
if ( inputState.guessing==0 ) {
ruleAutoGen = false;
}
break;
}
case ACTION:
case OPTIONS:
case ARG_ACTION:
case LITERAL_returns:
case COLON:
case LITERAL_throws:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.defineRuleName(idTok, access, ruleAutoGen, doc);
}
{
switch ( LA(1)) {
case ARG_ACTION:
{
aa = LT(1);
match(ARG_ACTION);
if ( inputState.guessing==0 ) {
behavior.refArgAction(aa);
}
break;
}
case ACTION:
case OPTIONS:
case LITERAL_returns:
case COLON:
case LITERAL_throws:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case LITERAL_returns:
{
match(LITERAL_returns);
rt = LT(1);
match(ARG_ACTION);
if ( inputState.guessing==0 ) {
behavior.refReturnAction(rt);
}
break;
}
case ACTION:
case OPTIONS:
case COLON:
case LITERAL_throws:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case LITERAL_throws:
{
throwsSpec();
break;
}
case ACTION:
case OPTIONS:
case COLON:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case OPTIONS:
{
ruleOptionsSpec();
break;
}
case ACTION:
case COLON:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case ACTION:
{
a = LT(1);
match(ACTION);
if ( inputState.guessing==0 ) {
behavior.refInitAction(a);
}
break;
}
case COLON:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
match(COLON);
block();
match(SEMI);
{
switch ( LA(1)) {
case LITERAL_exception:
{
exceptionGroup();
break;
}
case EOF:
case ACTION:
case DOC_COMMENT:
case LITERAL_lexclass:
case LITERAL_class:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.endRule(idTok.getText());
}
|
public final void | ruleOptionsSpec()
Token idTok; Token value;
match(OPTIONS);
{
_loop81:
do {
if ((LA(1)==TOKEN_REF||LA(1)==RULE_REF)) {
idTok=id();
match(ASSIGN);
value=optionValue();
if ( inputState.guessing==0 ) {
behavior.setRuleOption(idTok, value);
}
match(SEMI);
}
else {
break _loop81;
}
} while (true);
}
match(RCURLY);
|
public final void | rules()
{
int _cnt68=0;
_loop68:
do {
if ((_tokenSet_0.member(LA(1))) && (_tokenSet_1.member(LA(2)))) {
rule();
}
else {
if ( _cnt68>=1 ) { break _loop68; } else {throw new NoViableAltException(LT(1), getFilename());}
}
_cnt68++;
} while (true);
}
|
public final persistence.antlr.collections.impl.BitSet | setBlockElement()
BitSet b ;
Token c1 = null;
Token c2 = null;
b = null;
int rangeMin = 0;
c1 = LT(1);
match(CHAR_LITERAL);
if ( inputState.guessing==0 ) {
rangeMin = ANTLRLexer.tokenTypeForCharLiteral(c1.getText());
b = BitSet.of(rangeMin);
}
{
switch ( LA(1)) {
case RANGE:
{
match(RANGE);
c2 = LT(1);
match(CHAR_LITERAL);
if ( inputState.guessing==0 ) {
int rangeMax = ANTLRLexer.tokenTypeForCharLiteral(c2.getText());
if (rangeMax < rangeMin) {
antlrTool.error("Malformed range line ", getFilename(), c1.getLine(), c1.getColumn());
}
for (int i = rangeMin+1; i <= rangeMax; i++) {
b.add(i);
}
}
break;
}
case SEMI:
case OR:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
return b ;
|
public final void | subruleOptionsSpec()
Token idTok; Token value;
match(OPTIONS);
{
_loop30:
do {
if ((LA(1)==TOKEN_REF||LA(1)==RULE_REF)) {
idTok=id();
match(ASSIGN);
value=optionValue();
if ( inputState.guessing==0 ) {
behavior.setSubruleOption(idTok, value);
}
match(SEMI);
}
else {
break _loop30;
}
} while (true);
}
match(RCURLY);
|
public final java.lang.String | superClass()
String sup;
sup=null;
match(LPAREN);
if ( inputState.guessing==0 ) {
sup = LT(1).getText();
sup = StringUtils.stripFrontBack(sup, "\"", "\"");
}
{
match(STRING_LITERAL);
}
match(RPAREN);
return sup;
|
public final void | terminal(persistence.antlr.Token label)
Token cl = null;
Token tr = null;
Token aa = null;
Token sl = null;
Token wi = null;
int autoGen=GrammarElement.AUTO_GEN_NONE;
Token args=null;
switch ( LA(1)) {
case CHAR_LITERAL:
{
cl = LT(1);
match(CHAR_LITERAL);
{
switch ( LA(1)) {
case BANG:
{
match(BANG);
if ( inputState.guessing==0 ) {
autoGen = GrammarElement.AUTO_GEN_BANG;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.refCharLiteral(cl, label, false, autoGen, lastInRule());
}
break;
}
case TOKEN_REF:
{
tr = LT(1);
match(TOKEN_REF);
autoGen=ast_type_spec();
{
switch ( LA(1)) {
case ARG_ACTION:
{
aa = LT(1);
match(ARG_ACTION);
if ( inputState.guessing==0 ) {
args=aa;
}
break;
}
case STRING_LITERAL:
case ACTION:
case SEMI:
case CHAR_LITERAL:
case OR:
case TOKEN_REF:
case OPEN_ELEMENT_OPTION:
case LPAREN:
case RPAREN:
case LITERAL_exception:
case RULE_REF:
case NOT_OP:
case SEMPRED:
case TREE_BEGIN:
case WILDCARD:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.refToken(null, tr, label, args, false, autoGen, lastInRule());
}
break;
}
case STRING_LITERAL:
{
sl = LT(1);
match(STRING_LITERAL);
autoGen=ast_type_spec();
if ( inputState.guessing==0 ) {
behavior.refStringLiteral(sl, label, autoGen, lastInRule());
}
break;
}
case WILDCARD:
{
wi = LT(1);
match(WILDCARD);
autoGen=ast_type_spec();
if ( inputState.guessing==0 ) {
behavior.refWildcard(wi, label, autoGen);
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
|
public final void | throwsSpec()
String t=null;
Token a,b;
match(LITERAL_throws);
a=id();
if ( inputState.guessing==0 ) {
t=a.getText();
}
{
_loop84:
do {
if ((LA(1)==COMMA)) {
match(COMMA);
b=id();
if ( inputState.guessing==0 ) {
t+=","+b.getText();
}
}
else {
break _loop84;
}
} while (true);
}
if ( inputState.guessing==0 ) {
behavior.setUserExceptions(t);
}
|
public final void | tokensSpec()
Token t1 = null;
Token s1 = null;
Token s3 = null;
match(TOKENS);
{
int _cnt43=0;
_loop43:
do {
if ((LA(1)==STRING_LITERAL||LA(1)==TOKEN_REF)) {
{
switch ( LA(1)) {
case TOKEN_REF:
{
if ( inputState.guessing==0 ) {
s1=null;
}
t1 = LT(1);
match(TOKEN_REF);
{
switch ( LA(1)) {
case ASSIGN:
{
match(ASSIGN);
s1 = LT(1);
match(STRING_LITERAL);
break;
}
case SEMI:
case OPEN_ELEMENT_OPTION:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.defineToken(t1, s1);
}
{
switch ( LA(1)) {
case OPEN_ELEMENT_OPTION:
{
tokensSpecOptions(t1);
break;
}
case SEMI:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
break;
}
case STRING_LITERAL:
{
s3 = LT(1);
match(STRING_LITERAL);
if ( inputState.guessing==0 ) {
behavior.defineToken(null, s3);
}
{
switch ( LA(1)) {
case OPEN_ELEMENT_OPTION:
{
tokensSpecOptions(s3);
break;
}
case SEMI:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
match(SEMI);
}
else {
if ( _cnt43>=1 ) { break _loop43; } else {throw new NoViableAltException(LT(1), getFilename());}
}
_cnt43++;
} while (true);
}
match(RCURLY);
|
public final void | tokensSpecOptions(persistence.antlr.Token t)
Token o=null, v=null;
match(OPEN_ELEMENT_OPTION);
o=id();
match(ASSIGN);
v=optionValue();
if ( inputState.guessing==0 ) {
behavior.refTokensSpecElementOption(t,o,v);
}
{
_loop46:
do {
if ((LA(1)==SEMI)) {
match(SEMI);
o=id();
match(ASSIGN);
v=optionValue();
if ( inputState.guessing==0 ) {
behavior.refTokensSpecElementOption(t,o,v);
}
}
else {
break _loop46;
}
} while (true);
}
match(CLOSE_ELEMENT_OPTION);
|
public final void | tree()
Token lp = null;
lp = LT(1);
match(TREE_BEGIN);
if ( inputState.guessing==0 ) {
behavior.beginTree(lp);
}
rootNode();
if ( inputState.guessing==0 ) {
behavior.beginChildList();
}
{
int _cnt122=0;
_loop122:
do {
if ((_tokenSet_2.member(LA(1)))) {
element();
}
else {
if ( _cnt122>=1 ) { break _loop122; } else {throw new NoViableAltException(LT(1), getFilename());}
}
_cnt122++;
} while (true);
}
if ( inputState.guessing==0 ) {
behavior.endChildList();
}
match(RPAREN);
if ( inputState.guessing==0 ) {
behavior.endTree();
}
|
public final void | treeParserOptionsSpec()
Token idTok; Token value;
match(OPTIONS);
{
_loop24:
do {
if ((LA(1)==TOKEN_REF||LA(1)==RULE_REF)) {
idTok=id();
match(ASSIGN);
value=optionValue();
if ( inputState.guessing==0 ) {
behavior.setGrammarOption(idTok, value);
}
match(SEMI);
}
else {
break _loop24;
}
} while (true);
}
match(RCURLY);
|
public final void | treeParserSpec(java.lang.String doc)
Token a = null;
Token idTok;
String sup=null;
match(LITERAL_class);
idTok=id();
match(LITERAL_extends);
match(LITERAL_TreeParser);
{
switch ( LA(1)) {
case LPAREN:
{
sup=superClass();
break;
}
case SEMI:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.startTreeWalker(getFilename(), idTok,sup,doc);
}
match(SEMI);
{
switch ( LA(1)) {
case OPTIONS:
{
treeParserOptionsSpec();
break;
}
case ACTION:
case DOC_COMMENT:
case TOKENS:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
if ( inputState.guessing==0 ) {
behavior.endOptions();
}
{
switch ( LA(1)) {
case TOKENS:
{
tokensSpec();
break;
}
case ACTION:
case DOC_COMMENT:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{
switch ( LA(1)) {
case ACTION:
{
a = LT(1);
match(ACTION);
if ( inputState.guessing==0 ) {
behavior.refMemberAction(a);
}
break;
}
case DOC_COMMENT:
case TOKEN_REF:
case LITERAL_protected:
case LITERAL_public:
case LITERAL_private:
case RULE_REF:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
|