Merge branch 'codegen-template-tweaks' of github.com:sharwell/antlr4

This commit is contained in:
Terence Parr 2012-09-23 11:08:04 -07:00
commit d4d65be663
1 changed files with 21 additions and 27 deletions

View File

@ -16,9 +16,8 @@ ParserFile(file, parser, namedActions) ::= <<
// $ANTLR ANTLRVersion> <file.fileName> generatedTimestamp>
<if(file.genPackage)>
package <file.genPackage>;
<else>
<namedActions.header>
<endif>
<namedActions.header>
import org.antlr.v4.runtime.atn.*;
import org.antlr.v4.runtime.dfa.DFA;
import org.antlr.v4.runtime.*;
@ -34,9 +33,8 @@ import java.util.ArrayList;
ListenerFile(file, header) ::= <<
<if(file.genPackage)>
package <file.genPackage>;
<else>
<header>
<endif>
<header>
import org.antlr.v4.runtime.tree.*;
import org.antlr.v4.runtime.Token;
@ -50,9 +48,8 @@ void exit<lname; format="cap">(<file.parserName>.<lname; format="cap">Context ct
BaseListenerFile(file, header) ::= <<
<if(file.genPackage)>
package <file.genPackage>;
<else>
<header>
<endif>
<header>
import org.antlr.v4.runtime.ParserRuleContext;
import org.antlr.v4.runtime.Token;
@ -74,9 +71,8 @@ public class <file.grammarName>BaseListener implements <file.grammarName>Listene
VisitorFile(file, header) ::= <<
<if(file.genPackage)>
package <file.genPackage>;
<else>
<header>
<endif>
<header>
import org.antlr.v4.runtime.tree.*;
import org.antlr.v4.runtime.Token;
@ -89,9 +85,8 @@ T visit<lname; format="cap">(<file.parserName>.<lname; format="cap">Context ctx)
BaseVisitorFile(file, header) ::= <<
<if(file.genPackage)>
package <file.genPackage>;
<else>
<header>
<endif>
<header>
import org.antlr.v4.runtime.tree.*;
import org.antlr.v4.runtime.Token;
import org.antlr.v4.runtime.ParserRuleContext;
@ -117,7 +112,7 @@ public class <parser.name> extends <superClass> {
<parser.tokens:{k | <k>=<parser.tokens.(k)>}; separator=", ", wrap, anchor>;
<endif>
public static final String[] tokenNames = {
<parser.tokenNames:{t | <t>}; null="\"\<INVALID>\"", separator=", ", wrap, anchor>
<parser.tokenNames:{t | <t>}; null="\"\<INVALID>\"", separator=", ", wrap, anchor>
};
public static final int
<parser.rules:{r | RULE_<r.name> = <r.index>}; separator=", ", wrap, anchor>;
@ -225,15 +220,15 @@ RuleFunction(currentRule,code,locals,ruleCtx,altLabelCtxs,namedActions,finallyAc
<postamble; separator="\n">
<namedActions.after>
}
<if(exceptions)>
<exceptions; separator="\n">
<else>
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
<endif>
<if(exceptions)>
<exceptions; separator="\n">
<else>
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
<endif>
finally {
<finallyAction>
exitRule();
@ -498,7 +493,7 @@ if (!(<chunks>)) throw new FailedPredicateException(this, <if(p.msg)><p.msg><els
ExceptionClause(e, catchArg, catchAction) ::= <<
catch (<catchArg>) {
<catchAction>
<catchAction>
}
>>
@ -568,22 +563,22 @@ ContextTokenListGetterDecl(t) ::=
"public List\<TerminalNode\<<TokenLabelType()>>> <t.name>() { return getTokens(<parser.name>.<t.name>); }"
ContextTokenListIndexedGetterDecl(t) ::= <<
public TerminalNode\<<TokenLabelType()>\> <t.name>(int i) {
return getToken(<parser.name>.<t.name>, i);
return getToken(<parser.name>.<t.name>, i);
}
>>
ContextRuleGetterDecl(r) ::= <<
public <r.ctxName> <r.name>() {
return getRuleContext(<r.ctxName>.class,0);
return getRuleContext(<r.ctxName>.class,0);
}
>>
ContextRuleListGetterDecl(r) ::= <<
public List\<? extends <r.ctxName>\> <r.name>() {
return getRuleContexts(<r.ctxName>.class);
return getRuleContexts(<r.ctxName>.class);
}
>>
ContextRuleListIndexedGetterDecl(r) ::= <<
public <r.ctxName> <r.name>(int i) {
return getRuleContext(<r.ctxName>.class,i);
return getRuleContext(<r.ctxName>.class,i);
}
>>
@ -698,9 +693,8 @@ LexerFile(lexerFile, lexer, namedActions) ::= <<
// $ANTLR ANTLRVersion> <lexerFile.fileName> generatedTimestamp>
<if(lexerFile.genPackage)>
package <lexerFile.genPackage>;
<else>
<namedActions.header>
<endif>
<namedActions.header>
import org.antlr.v4.runtime.Lexer;
import org.antlr.v4.runtime.CharStream;
import org.antlr.v4.runtime.Token;