// $ANTLR 3.2 Sep 23, 2009 12:02:23 /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g 2013-05-01 08:51:33
/**
* Copyright (C) 2001-3, Anthony Harrison anh23@pitt.edu This library is free
* software; you can redistribute it and/or modify it under the terms of the
* GNU Lesser General Public License as published by the Free Software
* Foundation; either version 2.1 of the License, or (at your option) any later
* version. This library is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
* License for more details. You should have received a copy of the GNU Lesser
* General Public License along with this library; if not, write to the Free
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*/
package org.jactr.io.antlr3.generator.xml;
import java.util.Map;
import java.util.Collection;
import java.util.ArrayList;
import java.util.HashMap;
import org.jactr.io.participant.*;
import org.jactr.io.antlr3.builder.*;
import org.jactr.io.antlr3.misc.*;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.antlr.runtime.*;
import org.antlr.runtime.tree.*;import java.util.Stack;
import java.util.List;
import java.util.ArrayList;
public class JACTRGenerator extends TreeParser {
public static final String[] tokenNames = new String[] {
"<invalid>", "<EOR>", "<DOWN>", "<UP>", "MODEL", "LIBRARY", "MODULES", "MODULE", "EXTENSIONS", "EXTENSION", "DECLARATIVE_MEMORY", "CHUNK_TYPE", "CHUNKS", "CHUNK", "PROCEDURAL_MEMORY", "PRODUCTION", "PARAMETERS", "PARAMETER", "BUFFERS", "BUFFER", "CONDITIONS", "MATCH_CONDITION", "QUERY_CONDITION", "SCRIPTABLE_CONDITION", "PROXY_CONDITION", "ACTIONS", "ADD_ACTION", "SET_ACTION", "REMOVE_ACTION", "MODIFY_ACTION", "OUTPUT_ACTION", "SCRIPTABLE_ACTION", "PROXY_ACTION", "LANG", "SCRIPT", "VARIABLE", "STRING", "NUMBER", "IDENTIFIER", "CHUNK_IDENTIFIER", "CHUNK_TYPE_IDENTIFIER", "SLOTS", "SLOT", "LT", "GT", "EQUALS", "NOT", "WITHIN", "GTE", "LTE", "OR", "AND", "LOGIC", "CLASS_SPEC", "NAME", "PARENT", "PARENTS", "UNKNOWN"
};
public static final int LT=43;
public static final int LOGIC=52;
public static final int PARAMETERS=16;
public static final int SCRIPTABLE_ACTION=31;
public static final int CHUNK=13;
public static final int GTE=48;
public static final int PROXY_CONDITION=24;
public static final int LIBRARY=5;
public static final int EQUALS=45;
public static final int CHUNK_TYPE=11;
public static final int NOT=46;
public static final int AND=51;
public static final int EOF=-1;
public static final int LTE=49;
public static final int ADD_ACTION=26;
public static final int ACTIONS=25;
public static final int PARENT=55;
public static final int NAME=54;
public static final int EXTENSIONS=8;
public static final int UNKNOWN=57;
public static final int PROCEDURAL_MEMORY=14;
public static final int IDENTIFIER=38;
public static final int PARAMETER=17;
public static final int PRODUCTION=15;
public static final int DECLARATIVE_MEMORY=10;
public static final int MODEL=4;
public static final int MODULES=6;
public static final int REMOVE_ACTION=28;
public static final int MATCH_CONDITION=21;
public static final int SCRIPT=34;
public static final int PROXY_ACTION=32;
public static final int CHUNK_IDENTIFIER=39;
public static final int NUMBER=37;
public static final int BUFFER=19;
public static final int MODULE=7;
public static final int CONDITIONS=20;
public static final int SCRIPTABLE_CONDITION=23;
public static final int CHUNK_TYPE_IDENTIFIER=40;
public static final int PARENTS=56;
public static final int MODIFY_ACTION=29;
public static final int VARIABLE=35;
public static final int CLASS_SPEC=53;
public static final int SLOT=42;
public static final int BUFFERS=18;
public static final int OR=50;
public static final int CHUNKS=12;
public static final int WITHIN=47;
public static final int SLOTS=41;
public static final int GT=44;
public static final int SET_ACTION=27;
public static final int QUERY_CONDITION=22;
public static final int EXTENSION=9;
public static final int OUTPUT_ACTION=30;
public static final int STRING=36;
public static final int LANG=33;
// delegates
// delegators
public JACTRGenerator(TreeNodeStream input) {
this(input, new RecognizerSharedState());
}
public JACTRGenerator(TreeNodeStream input, RecognizerSharedState state) {
super(input, state);
}
public String[] getTokenNames() { return JACTRGenerator.tokenNames; }
public String getGrammarFileName() { return "/Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g"; }
//LOGGER
static private transient Log LOGGER = LogFactory.getLog(JACTRGenerator.class);
private Collection<IASTTrimmer> _trimmers = new ArrayList<IASTTrimmer>();
protected void addTrimmer(IASTTrimmer trimmer)
{
_trimmers.add(trimmer);
}
protected boolean shouldIgnore(Tree element)
{
if(!(element instanceof CommonTree)) return false;
CommonTree cElement = (CommonTree)element;
for(IASTTrimmer trimmer : _trimmers)
if(trimmer.shouldIgnore(cElement))
return true;
return false;
}
/**
indent the set of string buffers
*/
protected Collection<StringBuilder> indent(Collection<StringBuilder> collection, int spaces)
{
for(StringBuilder string : collection)
{
indent(string, spaces);
}
return collection;
}
protected StringBuilder indent(StringBuilder string, int spaces)
{
for(int i=0;i<spaces;i++)
string.insert(0,' ');
return string;
}
protected void newLines(Collection<StringBuilder> collection, int number)
{
for(int i=0;i<number;i++)
collection.add(new StringBuilder(0));
}
protected void comment(Collection<StringBuilder> collection, String message)
{
collection.add(new StringBuilder());
collection.add(new StringBuilder("<!-- ** ").append(message).append(" ** "));
collection.add(new StringBuilder("-->"));
}
protected Collection<StringBuilder> comment(String... messages)
{
Collection<StringBuilder> comments = new ArrayList<StringBuilder>();
comments.add(new StringBuilder(""));
comments.add(new StringBuilder("<!-- **************************************************"));
for(String message : messages)
comments.add(new StringBuilder(" * ").append(message));
comments.add(new StringBuilder(" ************************************************** "));
comments.add(new StringBuilder("-->"));
return comments;
}
protected boolean isEmpty(CommonTree node)
{
return node==null || node.getText().length()==0 || node.isNil();
}
// $ANTLR start "model"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:185:1: model returns [Collection<StringBuilder> collection] : ^(m= MODEL n= NAME mods= modules exts= extensions bufs= buffers ^( LIBRARY decs= declarative_memory procs= procedural_memory ) params= parameters ) ;
public final Collection<StringBuilder> model() throws RecognitionException {
Collection<StringBuilder> collection = null;
CommonTree m=null;
CommonTree n=null;
List<StringBuilder> mods = null;
List<StringBuilder> exts = null;
List<StringBuilder> bufs = null;
List<StringBuilder> decs = null;
List<StringBuilder> procs = null;
List<StringBuilder> params = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:189:2: ( ^(m= MODEL n= NAME mods= modules exts= extensions bufs= buffers ^( LIBRARY decs= declarative_memory procs= procedural_memory ) params= parameters ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:189:4: ^(m= MODEL n= NAME mods= modules exts= extensions bufs= buffers ^( LIBRARY decs= declarative_memory procs= procedural_memory ) params= parameters )
{
m=(CommonTree)match(input,MODEL,FOLLOW_MODEL_in_model328);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_model343);
pushFollow(FOLLOW_modules_in_model360);
mods=modules();
state._fsp--;
pushFollow(FOLLOW_extensions_in_model375);
exts=extensions();
state._fsp--;
pushFollow(FOLLOW_buffers_in_model390);
bufs=buffers();
state._fsp--;
match(input,LIBRARY,FOLLOW_LIBRARY_in_model404);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_declarative_memory_in_model421);
decs=declarative_memory();
state._fsp--;
pushFollow(FOLLOW_procedural_memory_in_model437);
procs=procedural_memory();
state._fsp--;
match(input, Token.UP, null);
pushFollow(FOLLOW_parameters_in_model454);
params=parameters();
state._fsp--;
match(input, Token.UP, null);
collection.add(new StringBuilder("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"));
collection.add(new StringBuilder("<actr>"));
StringBuilder tmp = new StringBuilder("<model name=\"");
tmp.append((n!=null?n.getText():null));
tmp.append("\" version=\"");
tmp.append(6);
tmp.append("\" >");
collection.add(indent(tmp,1));
indent(mods, 2);
collection.addAll(mods);
//the xml dumps the extensions first..
indent(exts, 2);
collection.addAll(exts);
indent(decs, 2);
collection.addAll(decs);
indent(procs, 2);
collection.addAll(procs);
indent(bufs,2);
collection.addAll(bufs);
indent(params,1);
collection.addAll(params);
collection.add(indent(new StringBuilder("</model>"),1));
collection.add(new StringBuilder("</actr>"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "model"
// $ANTLR start "parameters"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:235:1: parameters returns [List<StringBuilder> collection] : ( ^( PARAMETERS (param= parameter )+ ) | PARAMETERS ) ;
public final List<StringBuilder> parameters() throws RecognitionException {
List<StringBuilder> collection = null;
Collection<StringBuilder> param = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:239:1: ( ( ^( PARAMETERS (param= parameter )+ ) | PARAMETERS ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:239:3: ( ^( PARAMETERS (param= parameter )+ ) | PARAMETERS )
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:239:3: ( ^( PARAMETERS (param= parameter )+ ) | PARAMETERS )
int alt2=2;
int LA2_0 = input.LA(1);
if ( (LA2_0==PARAMETERS) ) {
int LA2_1 = input.LA(2);
if ( (LA2_1==DOWN) ) {
alt2=1;
}
else if ( (LA2_1==UP) ) {
alt2=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 2, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 2, 0, input);
throw nvae;
}
switch (alt2) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:239:5: ^( PARAMETERS (param= parameter )+ )
{
match(input,PARAMETERS,FOLLOW_PARAMETERS_in_parameters491);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:239:18: (param= parameter )+
int cnt1=0;
loop1:
do {
int alt1=2;
int LA1_0 = input.LA(1);
if ( (LA1_0==PARAMETER) ) {
alt1=1;
}
switch (alt1) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:239:19: param= parameter
{
pushFollow(FOLLOW_parameter_in_parameters496);
param=parameter();
state._fsp--;
collection.addAll(indent(param,2));
}
break;
default :
if ( cnt1 >= 1 ) break loop1;
EarlyExitException eee =
new EarlyExitException(1, input);
throw eee;
}
cnt1++;
} while (true);
match(input, Token.UP, null);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:240:7: PARAMETERS
{
match(input,PARAMETERS,FOLLOW_PARAMETERS_in_parameters510);
}
break;
}
if(collection.size()!=0)
{
//insert the header and footer
collection.add(0, new StringBuilder("<parameters>"));
collection.add(new StringBuilder("</parameters>"));
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "parameters"
// $ANTLR start "parameter"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:250:1: parameter returns [Collection<StringBuilder> collection] : ^(p= PARAMETER n= NAME s= STRING ) ;
public final Collection<StringBuilder> parameter() throws RecognitionException {
Collection<StringBuilder> collection = null;
CommonTree p=null;
CommonTree n=null;
CommonTree s=null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:254:1: ( ^(p= PARAMETER n= NAME s= STRING ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:254:3: ^(p= PARAMETER n= NAME s= STRING )
{
p=(CommonTree)match(input,PARAMETER,FOLLOW_PARAMETER_in_parameter534);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_parameter538);
s=(CommonTree)match(input,STRING,FOLLOW_STRING_in_parameter542);
match(input, Token.UP, null);
StringBuilder sb = new StringBuilder("<parameter name=\"");
sb.append((n!=null?n.getText():null));
sb.append("\" value=\"");
sb.append((s!=null?s.getText():null));
sb.append("\"/>");
collection.add(sb);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "parameter"
// $ANTLR start "modules"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:266:1: modules returns [List<StringBuilder> collection] : ( ^( MODULES (mod= module )+ ) | MODULES ) ;
public final List<StringBuilder> modules() throws RecognitionException {
List<StringBuilder> collection = null;
Collection<StringBuilder> mod = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:270:1: ( ( ^( MODULES (mod= module )+ ) | MODULES ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:270:3: ( ^( MODULES (mod= module )+ ) | MODULES )
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:270:3: ( ^( MODULES (mod= module )+ ) | MODULES )
int alt4=2;
int LA4_0 = input.LA(1);
if ( (LA4_0==MODULES) ) {
int LA4_1 = input.LA(2);
if ( (LA4_1==DOWN) ) {
alt4=1;
}
else if ( (LA4_1==EXTENSIONS) ) {
alt4=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 4, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 4, 0, input);
throw nvae;
}
switch (alt4) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:270:4: ^( MODULES (mod= module )+ )
{
match(input,MODULES,FOLLOW_MODULES_in_modules566);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:271:5: (mod= module )+
int cnt3=0;
loop3:
do {
int alt3=2;
int LA3_0 = input.LA(1);
if ( (LA3_0==MODULE) ) {
alt3=1;
}
switch (alt3) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:271:6: mod= module
{
pushFollow(FOLLOW_module_in_modules576);
mod=module();
state._fsp--;
collection.addAll(indent(mod,2));
}
break;
default :
if ( cnt3 >= 1 ) break loop3;
EarlyExitException eee =
new EarlyExitException(3, input);
throw eee;
}
cnt3++;
} while (true);
match(input, Token.UP, null);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:272:11: MODULES
{
match(input,MODULES,FOLLOW_MODULES_in_modules590);
}
break;
}
if(collection.size()!=0)
{
//insert header and footer
collection.add(0, new StringBuilder("<modules>"));
collection.add(new StringBuilder("</modules>"));
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "modules"
// $ANTLR start "module"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:282:1: module returns [Collection<StringBuilder> collection] : ^(mod= MODULE c= CLASS_SPEC (params= parameters )? ) ;
public final Collection<StringBuilder> module() throws RecognitionException {
Collection<StringBuilder> collection = null;
CommonTree mod=null;
CommonTree c=null;
List<StringBuilder> params = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:286:1: ( ^(mod= MODULE c= CLASS_SPEC (params= parameters )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:286:3: ^(mod= MODULE c= CLASS_SPEC (params= parameters )? )
{
mod=(CommonTree)match(input,MODULE,FOLLOW_MODULE_in_module613);
match(input, Token.DOWN, null);
c=(CommonTree)match(input,CLASS_SPEC,FOLLOW_CLASS_SPEC_in_module617);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:286:29: (params= parameters )?
int alt5=2;
int LA5_0 = input.LA(1);
if ( (LA5_0==PARAMETERS) ) {
alt5=1;
}
switch (alt5) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:286:30: params= parameters
{
pushFollow(FOLLOW_parameters_in_module622);
params=parameters();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<module class=\"");
tmp.append((c!=null?c.getText():null)).append("\" import=\"");
tmp.append(_trimmers.size()!=0).append("\"");
if(params==null || params.size()==0)
tmp.append("/>");
else
tmp.append(">");
collection.add(tmp);
collection.addAll(indent(params,2));
if(params!=null && params.size()!=0)
collection.add(new StringBuilder("</module>"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "module"
// $ANTLR start "extensions"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:307:1: extensions returns [List<StringBuilder> collection] : ( ^( EXTENSIONS (ext= extension )+ ) | EXTENSIONS ) ;
public final List<StringBuilder> extensions() throws RecognitionException {
List<StringBuilder> collection = null;
Collection<StringBuilder> ext = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:311:1: ( ( ^( EXTENSIONS (ext= extension )+ ) | EXTENSIONS ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:311:3: ( ^( EXTENSIONS (ext= extension )+ ) | EXTENSIONS )
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:311:3: ( ^( EXTENSIONS (ext= extension )+ ) | EXTENSIONS )
int alt7=2;
int LA7_0 = input.LA(1);
if ( (LA7_0==EXTENSIONS) ) {
int LA7_1 = input.LA(2);
if ( (LA7_1==DOWN) ) {
alt7=1;
}
else if ( (LA7_1==BUFFERS) ) {
alt7=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 7, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 7, 0, input);
throw nvae;
}
switch (alt7) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:311:4: ^( EXTENSIONS (ext= extension )+ )
{
match(input,EXTENSIONS,FOLLOW_EXTENSIONS_in_extensions650);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:312:5: (ext= extension )+
int cnt6=0;
loop6:
do {
int alt6=2;
int LA6_0 = input.LA(1);
if ( (LA6_0==EXTENSION) ) {
alt6=1;
}
switch (alt6) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:312:6: ext= extension
{
pushFollow(FOLLOW_extension_in_extensions660);
ext=extension();
state._fsp--;
collection.addAll(indent(ext,2));
}
break;
default :
if ( cnt6 >= 1 ) break loop6;
EarlyExitException eee =
new EarlyExitException(6, input);
throw eee;
}
cnt6++;
} while (true);
match(input, Token.UP, null);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:313:11: EXTENSIONS
{
match(input,EXTENSIONS,FOLLOW_EXTENSIONS_in_extensions674);
}
break;
}
if(collection.size()!=0)
{
//insert header and footer
collection.add(0, new StringBuilder("<extensions>"));
collection.add(new StringBuilder("</extensions>"));
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "extensions"
// $ANTLR start "extension"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:323:1: extension returns [Collection<StringBuilder> collection] : ^(ext= EXTENSION c= CLASS_SPEC (params= parameters )? ) ;
public final Collection<StringBuilder> extension() throws RecognitionException {
Collection<StringBuilder> collection = null;
CommonTree ext=null;
CommonTree c=null;
List<StringBuilder> params = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:327:1: ( ^(ext= EXTENSION c= CLASS_SPEC (params= parameters )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:327:3: ^(ext= EXTENSION c= CLASS_SPEC (params= parameters )? )
{
ext=(CommonTree)match(input,EXTENSION,FOLLOW_EXTENSION_in_extension697);
match(input, Token.DOWN, null);
c=(CommonTree)match(input,CLASS_SPEC,FOLLOW_CLASS_SPEC_in_extension701);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:327:32: (params= parameters )?
int alt8=2;
int LA8_0 = input.LA(1);
if ( (LA8_0==PARAMETERS) ) {
alt8=1;
}
switch (alt8) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:327:33: params= parameters
{
pushFollow(FOLLOW_parameters_in_extension706);
params=parameters();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<extension ");
tmp.append("class=\"");
tmp.append((c!=null?c.getText():null)).append("\"");
collection.add(tmp);
if(params==null || params.size()==0)
tmp.append("/>");
else
{
tmp.append(">");
collection.addAll(indent(params,2));
collection.add(new StringBuilder("</extension>"));
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "extension"
// $ANTLR start "buffers"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:344:1: buffers returns [List<StringBuilder> collection] : ( ^( BUFFERS (buf= buffer )+ ) | BUFFERS ) ;
public final List<StringBuilder> buffers() throws RecognitionException {
List<StringBuilder> collection = null;
Collection<StringBuilder> buf = null;
collection = new ArrayList<StringBuilder>();
newLines(collection, 2);
collection.addAll(comment("Buffer definitions"));
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:350:1: ( ( ^( BUFFERS (buf= buffer )+ ) | BUFFERS ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:350:3: ( ^( BUFFERS (buf= buffer )+ ) | BUFFERS )
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:350:3: ( ^( BUFFERS (buf= buffer )+ ) | BUFFERS )
int alt10=2;
int LA10_0 = input.LA(1);
if ( (LA10_0==BUFFERS) ) {
int LA10_1 = input.LA(2);
if ( (LA10_1==DOWN) ) {
alt10=1;
}
else if ( (LA10_1==LIBRARY) ) {
alt10=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 10, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 10, 0, input);
throw nvae;
}
switch (alt10) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:350:4: ^( BUFFERS (buf= buffer )+ )
{
match(input,BUFFERS,FOLLOW_BUFFERS_in_buffers729);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:351:7: (buf= buffer )+
int cnt9=0;
loop9:
do {
int alt9=2;
int LA9_0 = input.LA(1);
if ( (LA9_0==BUFFER) ) {
alt9=1;
}
switch (alt9) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:351:8: buf= buffer
{
pushFollow(FOLLOW_buffer_in_buffers741);
buf=buffer();
state._fsp--;
collection.addAll(indent(buf,2));
}
break;
default :
if ( cnt9 >= 1 ) break loop9;
EarlyExitException eee =
new EarlyExitException(9, input);
throw eee;
}
cnt9++;
} while (true);
match(input, Token.UP, null);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:352:13: BUFFERS
{
match(input,BUFFERS,FOLLOW_BUFFERS_in_buffers757);
}
break;
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "buffers"
// $ANTLR start "buffer"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:356:1: buffer returns [Collection<StringBuilder> collection] : ^(buff= BUFFER n= NAME ( ^( CHUNKS (i= CHUNK_IDENTIFIER )+ ) | CHUNKS ) (params= parameters )? ) ;
public final Collection<StringBuilder> buffer() throws RecognitionException {
Collection<StringBuilder> collection = null;
CommonTree buff=null;
CommonTree n=null;
CommonTree i=null;
List<StringBuilder> params = null;
collection = new ArrayList<StringBuilder>();
Collection<String> identifiers=new ArrayList<String>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:361:1: ( ^(buff= BUFFER n= NAME ( ^( CHUNKS (i= CHUNK_IDENTIFIER )+ ) | CHUNKS ) (params= parameters )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:361:3: ^(buff= BUFFER n= NAME ( ^( CHUNKS (i= CHUNK_IDENTIFIER )+ ) | CHUNKS ) (params= parameters )? )
{
buff=(CommonTree)match(input,BUFFER,FOLLOW_BUFFER_in_buffer779);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_buffer783);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:362:14: ( ^( CHUNKS (i= CHUNK_IDENTIFIER )+ ) | CHUNKS )
int alt12=2;
int LA12_0 = input.LA(1);
if ( (LA12_0==CHUNKS) ) {
int LA12_1 = input.LA(2);
if ( (LA12_1==DOWN) ) {
alt12=1;
}
else if ( (LA12_1==UP||LA12_1==PARAMETERS) ) {
alt12=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 12, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 12, 0, input);
throw nvae;
}
switch (alt12) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:362:15: ^( CHUNKS (i= CHUNK_IDENTIFIER )+ )
{
match(input,CHUNKS,FOLLOW_CHUNKS_in_buffer802);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:363:16: (i= CHUNK_IDENTIFIER )+
int cnt11=0;
loop11:
do {
int alt11=2;
int LA11_0 = input.LA(1);
if ( (LA11_0==CHUNK_IDENTIFIER) ) {
alt11=1;
}
switch (alt11) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:363:17: i= CHUNK_IDENTIFIER
{
i=(CommonTree)match(input,CHUNK_IDENTIFIER,FOLLOW_CHUNK_IDENTIFIER_in_buffer823);
identifiers.add((i!=null?i.getText():null));
}
break;
default :
if ( cnt11 >= 1 ) break loop11;
EarlyExitException eee =
new EarlyExitException(11, input);
throw eee;
}
cnt11++;
} while (true);
match(input, Token.UP, null);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:364:21: CHUNKS
{
match(input,CHUNKS,FOLLOW_CHUNKS_in_buffer847);
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:365:14: (params= parameters )?
int alt13=2;
int LA13_0 = input.LA(1);
if ( (LA13_0==PARAMETERS) ) {
alt13=1;
}
switch (alt13) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:365:15: params= parameters
{
pushFollow(FOLLOW_parameters_in_buffer867);
params=parameters();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<buffer name=\"");
tmp.append((n!=null?n.getText():null)).append("\" ");;
if(identifiers.size()!=0)
tmp.append("chunk=\"").append(identifiers.iterator().next()).append("\"");
if(params.size()!=0)
tmp.append(">");
else
tmp.append("/>");
collection.add(tmp);
//now for the parameters
if(params.size()!=0)
{
collection.addAll(indent(params,2));
collection.add(new StringBuilder("</buffer>"));
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "buffer"
// $ANTLR start "declarative_memory"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:388:1: declarative_memory returns [List<StringBuilder> collection] : ( ^( DECLARATIVE_MEMORY (ct= chunktype )+ ) | DECLARATIVE_MEMORY ) ;
public final List<StringBuilder> declarative_memory() throws RecognitionException {
List<StringBuilder> collection = null;
Collection<StringBuilder> ct = null;
collection = new ArrayList<StringBuilder>();
collection.addAll(comment("declarative memory container for chunks and chunk-types"));
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:394:1: ( ( ^( DECLARATIVE_MEMORY (ct= chunktype )+ ) | DECLARATIVE_MEMORY ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:394:3: ( ^( DECLARATIVE_MEMORY (ct= chunktype )+ ) | DECLARATIVE_MEMORY )
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:394:3: ( ^( DECLARATIVE_MEMORY (ct= chunktype )+ ) | DECLARATIVE_MEMORY )
int alt15=2;
int LA15_0 = input.LA(1);
if ( (LA15_0==DECLARATIVE_MEMORY) ) {
int LA15_1 = input.LA(2);
if ( (LA15_1==DOWN) ) {
alt15=1;
}
else if ( (LA15_1==PROCEDURAL_MEMORY) ) {
alt15=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 15, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 15, 0, input);
throw nvae;
}
switch (alt15) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:394:4: ^( DECLARATIVE_MEMORY (ct= chunktype )+ )
{
match(input,DECLARATIVE_MEMORY,FOLLOW_DECLARATIVE_MEMORY_in_declarative_memory895);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:395:7: (ct= chunktype )+
int cnt14=0;
loop14:
do {
int alt14=2;
int LA14_0 = input.LA(1);
if ( (LA14_0==CHUNK_TYPE) ) {
alt14=1;
}
switch (alt14) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:395:8: ct= chunktype
{
pushFollow(FOLLOW_chunktype_in_declarative_memory907);
ct=chunktype();
state._fsp--;
collection.addAll(indent(ct,2));
}
break;
default :
if ( cnt14 >= 1 ) break loop14;
EarlyExitException eee =
new EarlyExitException(14, input);
throw eee;
}
cnt14++;
} while (true);
match(input, Token.UP, null);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:398:10: DECLARATIVE_MEMORY
{
match(input,DECLARATIVE_MEMORY,FOLLOW_DECLARATIVE_MEMORY_in_declarative_memory920);
}
break;
}
//header and footer
collection.add(0,new StringBuilder("<declarative-memory>"));
collection.add(new StringBuilder("</declarative-memory>"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "declarative_memory"
// $ANTLR start "procedural_memory"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:405:1: procedural_memory returns [List<StringBuilder> collection] : ( ^( PROCEDURAL_MEMORY (prod= production )+ ) | PROCEDURAL_MEMORY ) ;
public final List<StringBuilder> procedural_memory() throws RecognitionException {
List<StringBuilder> collection = null;
Collection<StringBuilder> prod = null;
collection = new ArrayList<StringBuilder>();
collection.addAll(comment("procedural memory container for productions"));
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:411:1: ( ( ^( PROCEDURAL_MEMORY (prod= production )+ ) | PROCEDURAL_MEMORY ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:411:3: ( ^( PROCEDURAL_MEMORY (prod= production )+ ) | PROCEDURAL_MEMORY )
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:411:3: ( ^( PROCEDURAL_MEMORY (prod= production )+ ) | PROCEDURAL_MEMORY )
int alt17=2;
int LA17_0 = input.LA(1);
if ( (LA17_0==PROCEDURAL_MEMORY) ) {
int LA17_1 = input.LA(2);
if ( (LA17_1==DOWN) ) {
alt17=1;
}
else if ( (LA17_1==UP) ) {
alt17=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 17, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 17, 0, input);
throw nvae;
}
switch (alt17) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:411:4: ^( PROCEDURAL_MEMORY (prod= production )+ )
{
match(input,PROCEDURAL_MEMORY,FOLLOW_PROCEDURAL_MEMORY_in_procedural_memory942);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:412:7: (prod= production )+
int cnt16=0;
loop16:
do {
int alt16=2;
int LA16_0 = input.LA(1);
if ( (LA16_0==PRODUCTION) ) {
alt16=1;
}
switch (alt16) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:412:8: prod= production
{
pushFollow(FOLLOW_production_in_procedural_memory954);
prod=production();
state._fsp--;
collection.addAll(indent(prod,2));
newLines(collection, 2);
}
break;
default :
if ( cnt16 >= 1 ) break loop16;
EarlyExitException eee =
new EarlyExitException(16, input);
throw eee;
}
cnt16++;
} while (true);
match(input, Token.UP, null);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:416:13: PROCEDURAL_MEMORY
{
match(input,PROCEDURAL_MEMORY,FOLLOW_PROCEDURAL_MEMORY_in_procedural_memory970);
}
break;
}
//header and footer
collection.add(0,new StringBuilder("<procedural-memory>"));
collection.add(new StringBuilder("</procedural-memory>"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "procedural_memory"
// $ANTLR start "chunktype"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:423:1: chunktype returns [Collection<StringBuilder> collection] : ^(ct= CHUNK_TYPE n= NAME (p= parents )? (sl= slots )? (ch= chunks )? (params= parameters )? ) ;
public final Collection<StringBuilder> chunktype() throws RecognitionException {
Collection<StringBuilder> collection = null;
CommonTree ct=null;
CommonTree n=null;
String p = null;
Collection<StringBuilder> sl = null;
Collection<StringBuilder> ch = null;
List<StringBuilder> params = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:427:1: ( ^(ct= CHUNK_TYPE n= NAME (p= parents )? (sl= slots )? (ch= chunks )? (params= parameters )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:427:3: ^(ct= CHUNK_TYPE n= NAME (p= parents )? (sl= slots )? (ch= chunks )? (params= parameters )? )
{
ct=(CommonTree)match(input,CHUNK_TYPE,FOLLOW_CHUNK_TYPE_in_chunktype993);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_chunktype1012);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:429:15: (p= parents )?
int alt18=2;
int LA18_0 = input.LA(1);
if ( (LA18_0==PARENTS) ) {
alt18=1;
}
switch (alt18) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:429:16: p= parents
{
pushFollow(FOLLOW_parents_in_chunktype1031);
p=parents();
state._fsp--;
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:430:15: (sl= slots )?
int alt19=2;
int LA19_0 = input.LA(1);
if ( (LA19_0==SLOTS) ) {
alt19=1;
}
switch (alt19) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:430:16: sl= slots
{
pushFollow(FOLLOW_slots_in_chunktype1053);
sl=slots();
state._fsp--;
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:431:15: (ch= chunks )?
int alt20=2;
int LA20_0 = input.LA(1);
if ( (LA20_0==CHUNKS) ) {
alt20=1;
}
switch (alt20) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:431:16: ch= chunks
{
pushFollow(FOLLOW_chunks_in_chunktype1075);
ch=chunks();
state._fsp--;
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:432:15: (params= parameters )?
int alt21=2;
int LA21_0 = input.LA(1);
if ( (LA21_0==PARAMETERS) ) {
alt21=1;
}
switch (alt21) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:432:16: params= parameters
{
pushFollow(FOLLOW_parameters_in_chunktype1097);
params=parameters();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
if(shouldIgnore(ct))
{
//flag with a comment?
LOGGER.debug("Ignoring chunktype "+(n!=null?n.getText():null));
}
else
{
//and add some space after the chunks before the chunktype
newLines(collection, 2);
StringBuilder tmp = new StringBuilder("<chunk-type name=\"");
tmp.append((n!=null?n.getText():null));
tmp.append("\" ");
if(p != null && p.length() > 0)
{
tmp.append("parent=\"");
tmp.append(p);
tmp.append("\" ");
}
if( (sl==null || sl.size()==0)
&&(params==null || params.size()==0))
{
//quick closer
tmp.append("/>");
collection.add(tmp);
}
else
{
//long closer
tmp.append(">");
collection.add(tmp);
if(sl!=null)
collection.addAll(indent(sl,2));
if(params!=null)
collection.addAll(indent(params,2));
collection.add(new StringBuilder("</chunk-type>"));
}
}
//now we do the chunks..
if(ch!=null && ch.size()!=0)
{
comment(collection, "all chunks for chunk-type "+(n!=null?n.getText():null));
collection.addAll(indent(ch,2));
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "chunktype"
// $ANTLR start "parents"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:483:1: parents returns [String parentStr] : ( ^( PARENTS (p= PARENT )+ ) | PARENTS ) ;
public final String parents() throws RecognitionException {
String parentStr = null;
CommonTree p=null;
parentStr = "";
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:487:1: ( ( ^( PARENTS (p= PARENT )+ ) | PARENTS ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:487:2: ( ^( PARENTS (p= PARENT )+ ) | PARENTS )
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:487:2: ( ^( PARENTS (p= PARENT )+ ) | PARENTS )
int alt23=2;
int LA23_0 = input.LA(1);
if ( (LA23_0==PARENTS) ) {
int LA23_1 = input.LA(2);
if ( (LA23_1==DOWN) ) {
alt23=1;
}
else if ( (LA23_1==UP||LA23_1==CHUNKS||LA23_1==PARAMETERS||LA23_1==SLOTS) ) {
alt23=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 23, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 23, 0, input);
throw nvae;
}
switch (alt23) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:487:3: ^( PARENTS (p= PARENT )+ )
{
match(input,PARENTS,FOLLOW_PARENTS_in_parents1120);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:488:6: (p= PARENT )+
int cnt22=0;
loop22:
do {
int alt22=2;
int LA22_0 = input.LA(1);
if ( (LA22_0==PARENT) ) {
alt22=1;
}
switch (alt22) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:488:7: p= PARENT
{
p=(CommonTree)match(input,PARENT,FOLLOW_PARENT_in_parents1130);
if(parentStr.length() > 0) parentStr += ",";
parentStr+=(p!=null?p.getText():null);
}
break;
default :
if ( cnt22 >= 1 ) break loop22;
EarlyExitException eee =
new EarlyExitException(22, input);
throw eee;
}
cnt22++;
} while (true);
match(input, Token.UP, null);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:490:12: PARENTS
{
match(input,PARENTS,FOLLOW_PARENTS_in_parents1145);
}
break;
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return parentStr;
}
// $ANTLR end "parents"
// $ANTLR start "slots"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:494:1: slots returns [Collection<StringBuilder> collection] : ( ^( SLOTS (s= slot | l= logic )+ ) | SLOTS ) ;
public final Collection<StringBuilder> slots() throws RecognitionException {
Collection<StringBuilder> collection = null;
Collection<StringBuilder> s = null;
Collection<StringBuilder> l = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:498:1: ( ( ^( SLOTS (s= slot | l= logic )+ ) | SLOTS ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:498:2: ( ^( SLOTS (s= slot | l= logic )+ ) | SLOTS )
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:498:2: ( ^( SLOTS (s= slot | l= logic )+ ) | SLOTS )
int alt25=2;
int LA25_0 = input.LA(1);
if ( (LA25_0==SLOTS) ) {
int LA25_1 = input.LA(2);
if ( (LA25_1==DOWN) ) {
alt25=1;
}
else if ( (LA25_1==UP||LA25_1==CHUNKS||LA25_1==PARAMETERS) ) {
alt25=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 25, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 25, 0, input);
throw nvae;
}
switch (alt25) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:498:3: ^( SLOTS (s= slot | l= logic )+ )
{
match(input,SLOTS,FOLLOW_SLOTS_in_slots1166);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:499:6: (s= slot | l= logic )+
int cnt24=0;
loop24:
do {
int alt24=3;
int LA24_0 = input.LA(1);
if ( (LA24_0==SLOT) ) {
alt24=1;
}
else if ( (LA24_0==LOGIC) ) {
alt24=2;
}
switch (alt24) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:499:7: s= slot
{
pushFollow(FOLLOW_slot_in_slots1177);
s=slot();
state._fsp--;
collection.addAll(s);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:500:8: l= logic
{
pushFollow(FOLLOW_logic_in_slots1190);
l=logic();
state._fsp--;
collection.addAll(l);
}
break;
default :
if ( cnt24 >= 1 ) break loop24;
EarlyExitException eee =
new EarlyExitException(24, input);
throw eee;
}
cnt24++;
} while (true);
match(input, Token.UP, null);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:501:10: SLOTS
{
match(input,SLOTS,FOLLOW_SLOTS_in_slots1203);
}
break;
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "slots"
// $ANTLR start "chunks"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:505:1: chunks returns [Collection<StringBuilder> collection] : ( ^( CHUNKS (c= chunk )+ ) | CHUNKS ) ;
public final Collection<StringBuilder> chunks() throws RecognitionException {
Collection<StringBuilder> collection = null;
Collection<StringBuilder> c = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:509:1: ( ( ^( CHUNKS (c= chunk )+ ) | CHUNKS ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:509:3: ( ^( CHUNKS (c= chunk )+ ) | CHUNKS )
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:509:3: ( ^( CHUNKS (c= chunk )+ ) | CHUNKS )
int alt27=2;
int LA27_0 = input.LA(1);
if ( (LA27_0==CHUNKS) ) {
int LA27_1 = input.LA(2);
if ( (LA27_1==DOWN) ) {
alt27=1;
}
else if ( (LA27_1==UP||LA27_1==PARAMETERS) ) {
alt27=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 27, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 27, 0, input);
throw nvae;
}
switch (alt27) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:509:4: ^( CHUNKS (c= chunk )+ )
{
match(input,CHUNKS,FOLLOW_CHUNKS_in_chunks1225);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:510:6: (c= chunk )+
int cnt26=0;
loop26:
do {
int alt26=2;
int LA26_0 = input.LA(1);
if ( (LA26_0==CHUNK) ) {
alt26=1;
}
switch (alt26) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:510:7: c= chunk
{
pushFollow(FOLLOW_chunk_in_chunks1236);
c=chunk();
state._fsp--;
collection.addAll(c);
}
break;
default :
if ( cnt26 >= 1 ) break loop26;
EarlyExitException eee =
new EarlyExitException(26, input);
throw eee;
}
cnt26++;
} while (true);
match(input, Token.UP, null);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:513:12: CHUNKS
{
match(input,CHUNKS,FOLLOW_CHUNKS_in_chunks1251);
}
break;
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "chunks"
// $ANTLR start "logic"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:517:1: logic returns [Collection<StringBuilder> collection] : ^(l= LOGIC (v= AND | v= OR | v= NOT ) (s1= logic | s1= slot ) (s2= logic | s2= slot )? ) ;
public final Collection<StringBuilder> logic() throws RecognitionException {
Collection<StringBuilder> collection = null;
CommonTree l=null;
CommonTree v=null;
Collection<StringBuilder> s1 = null;
Collection<StringBuilder> s2 = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:1: ( ^(l= LOGIC (v= AND | v= OR | v= NOT ) (s1= logic | s1= slot ) (s2= logic | s2= slot )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:3: ^(l= LOGIC (v= AND | v= OR | v= NOT ) (s1= logic | s1= slot ) (s2= logic | s2= slot )? )
{
l=(CommonTree)match(input,LOGIC,FOLLOW_LOGIC_in_logic1273);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:13: (v= AND | v= OR | v= NOT )
int alt28=3;
switch ( input.LA(1) ) {
case AND:
{
alt28=1;
}
break;
case OR:
{
alt28=2;
}
break;
case NOT:
{
alt28=3;
}
break;
default:
NoViableAltException nvae =
new NoViableAltException("", 28, 0, input);
throw nvae;
}
switch (alt28) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:14: v= AND
{
v=(CommonTree)match(input,AND,FOLLOW_AND_in_logic1278);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:20: v= OR
{
v=(CommonTree)match(input,OR,FOLLOW_OR_in_logic1282);
}
break;
case 3 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:25: v= NOT
{
v=(CommonTree)match(input,NOT,FOLLOW_NOT_in_logic1286);
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:32: (s1= logic | s1= slot )
int alt29=2;
int LA29_0 = input.LA(1);
if ( (LA29_0==LOGIC) ) {
alt29=1;
}
else if ( (LA29_0==SLOT) ) {
alt29=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 29, 0, input);
throw nvae;
}
switch (alt29) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:33: s1= logic
{
pushFollow(FOLLOW_logic_in_logic1292);
s1=logic();
state._fsp--;
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:42: s1= slot
{
pushFollow(FOLLOW_slot_in_logic1296);
s1=slot();
state._fsp--;
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:51: (s2= logic | s2= slot )?
int alt30=3;
int LA30_0 = input.LA(1);
if ( (LA30_0==LOGIC) ) {
alt30=1;
}
else if ( (LA30_0==SLOT) ) {
alt30=2;
}
switch (alt30) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:52: s2= logic
{
pushFollow(FOLLOW_logic_in_logic1302);
s2=logic();
state._fsp--;
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:521:61: s2= slot
{
pushFollow(FOLLOW_slot_in_logic1306);
s2=slot();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
collection.add(new StringBuilder("<" + (v!=null?v.getText():null) + ">"));
collection.addAll(s1);
if(s2 != null) collection.addAll(s2);
collection.add(new StringBuilder("</" + (v!=null?v.getText():null) + ">"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "logic"
// $ANTLR start "slot"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:529:1: slot returns [Collection<StringBuilder> collection] : ^(sl= SLOT (n= NAME | n= VARIABLE ) ( ( EQUALS | LT | GT | NOT | WITHIN | LTE | GTE ) (v= VARIABLE | v= STRING | v= IDENTIFIER | v= NUMBER ) )? ) ;
public final Collection<StringBuilder> slot() throws RecognitionException {
Collection<StringBuilder> collection = null;
CommonTree sl=null;
CommonTree n=null;
CommonTree v=null;
collection = new ArrayList<StringBuilder>();
String cond = "equals";
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:534:1: ( ^(sl= SLOT (n= NAME | n= VARIABLE ) ( ( EQUALS | LT | GT | NOT | WITHIN | LTE | GTE ) (v= VARIABLE | v= STRING | v= IDENTIFIER | v= NUMBER ) )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:534:3: ^(sl= SLOT (n= NAME | n= VARIABLE ) ( ( EQUALS | LT | GT | NOT | WITHIN | LTE | GTE ) (v= VARIABLE | v= STRING | v= IDENTIFIER | v= NUMBER ) )? )
{
sl=(CommonTree)match(input,SLOT,FOLLOW_SLOT_in_slot1331);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:534:13: (n= NAME | n= VARIABLE )
int alt31=2;
int LA31_0 = input.LA(1);
if ( (LA31_0==NAME) ) {
alt31=1;
}
else if ( (LA31_0==VARIABLE) ) {
alt31=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 31, 0, input);
throw nvae;
}
switch (alt31) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:534:14: n= NAME
{
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_slot1336);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:534:23: n= VARIABLE
{
n=(CommonTree)match(input,VARIABLE,FOLLOW_VARIABLE_in_slot1342);
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:535:10: ( ( EQUALS | LT | GT | NOT | WITHIN | LTE | GTE ) (v= VARIABLE | v= STRING | v= IDENTIFIER | v= NUMBER ) )?
int alt34=2;
int LA34_0 = input.LA(1);
if ( ((LA34_0>=LT && LA34_0<=LTE)) ) {
alt34=1;
}
switch (alt34) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:535:11: ( EQUALS | LT | GT | NOT | WITHIN | LTE | GTE ) (v= VARIABLE | v= STRING | v= IDENTIFIER | v= NUMBER )
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:535:11: ( EQUALS | LT | GT | NOT | WITHIN | LTE | GTE )
int alt32=7;
switch ( input.LA(1) ) {
case EQUALS:
{
alt32=1;
}
break;
case LT:
{
alt32=2;
}
break;
case GT:
{
alt32=3;
}
break;
case NOT:
{
alt32=4;
}
break;
case WITHIN:
{
alt32=5;
}
break;
case LTE:
{
alt32=6;
}
break;
case GTE:
{
alt32=7;
}
break;
default:
NoViableAltException nvae =
new NoViableAltException("", 32, 0, input);
throw nvae;
}
switch (alt32) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:535:12: EQUALS
{
match(input,EQUALS,FOLLOW_EQUALS_in_slot1356);
cond="equals";
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:536:13: LT
{
match(input,LT,FOLLOW_LT_in_slot1372);
cond="less-than";
}
break;
case 3 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:537:13: GT
{
match(input,GT,FOLLOW_GT_in_slot1391);
cond="greater-than";
}
break;
case 4 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:538:13: NOT
{
match(input,NOT,FOLLOW_NOT_in_slot1410);
cond="not";
}
break;
case 5 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:539:13: WITHIN
{
match(input,WITHIN,FOLLOW_WITHIN_in_slot1428);
cond="within";
}
break;
case 6 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:540:13: LTE
{
match(input,LTE,FOLLOW_LTE_in_slot1444);
cond="less-than-equals";
}
break;
case 7 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:541:13: GTE
{
match(input,GTE,FOLLOW_GTE_in_slot1463);
cond="greater-than-equals";
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:543:11: (v= VARIABLE | v= STRING | v= IDENTIFIER | v= NUMBER )
int alt33=4;
switch ( input.LA(1) ) {
case VARIABLE:
{
alt33=1;
}
break;
case STRING:
{
alt33=2;
}
break;
case IDENTIFIER:
{
alt33=3;
}
break;
case NUMBER:
{
alt33=4;
}
break;
default:
NoViableAltException nvae =
new NoViableAltException("", 33, 0, input);
throw nvae;
}
switch (alt33) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:543:12: v= VARIABLE
{
v=(CommonTree)match(input,VARIABLE,FOLLOW_VARIABLE_in_slot1495);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:544:12: v= STRING
{
v=(CommonTree)match(input,STRING,FOLLOW_STRING_in_slot1511);
}
break;
case 3 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:545:12: v= IDENTIFIER
{
v=(CommonTree)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_slot1528);
}
break;
case 4 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:546:12: v= NUMBER
{
v=(CommonTree)match(input,NUMBER,FOLLOW_NUMBER_in_slot1544);
}
break;
}
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<slot name=\"");
tmp.append((n!=null?n.getText():null));
boolean isReserved = "null".equalsIgnoreCase((v!=null?v.getText():null)) ||
"true".equalsIgnoreCase((v!=null?v.getText():null)) ||
"false".equalsIgnoreCase((v!=null?v.getText():null));
tmp.append("\" ");
if(cond!=null && v!=null)
{
tmp.append(cond);
tmp.append("=\"");
if((v!=null?v.getType():0)==STRING && !isReserved)
tmp.append("'");
tmp.append((v!=null?v.getText():null));
if((v!=null?v.getType():0)==STRING && !isReserved)
tmp.append("'");
tmp.append("\"");
}
tmp.append("/>");
LOGGER.debug("slot yielded : "+tmp);
collection.add(tmp);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "slot"
// $ANTLR start "chunk"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:574:1: chunk returns [Collection<StringBuilder> collection] : ^(ch= CHUNK n= NAME p= PARENT (sl= slots )? (params= parameters )? ) ;
public final Collection<StringBuilder> chunk() throws RecognitionException {
Collection<StringBuilder> collection = null;
CommonTree ch=null;
CommonTree n=null;
CommonTree p=null;
Collection<StringBuilder> sl = null;
List<StringBuilder> params = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:578:1: ( ^(ch= CHUNK n= NAME p= PARENT (sl= slots )? (params= parameters )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:578:3: ^(ch= CHUNK n= NAME p= PARENT (sl= slots )? (params= parameters )? )
{
ch=(CommonTree)match(input,CHUNK,FOLLOW_CHUNK_in_chunk1592);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_chunk1603);
p=(CommonTree)match(input,PARENT,FOLLOW_PARENT_in_chunk1613);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:581:7: (sl= slots )?
int alt35=2;
int LA35_0 = input.LA(1);
if ( (LA35_0==SLOTS) ) {
alt35=1;
}
switch (alt35) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:581:8: sl= slots
{
pushFollow(FOLLOW_slots_in_chunk1625);
sl=slots();
state._fsp--;
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:582:7: (params= parameters )?
int alt36=2;
int LA36_0 = input.LA(1);
if ( (LA36_0==PARAMETERS) ) {
alt36=1;
}
switch (alt36) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:582:8: params= parameters
{
pushFollow(FOLLOW_parameters_in_chunk1639);
params=parameters();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
if(shouldIgnore(ch))
{
// should we log this with a comment?
LOGGER.debug("Ignoring chunk "+(n!=null?n.getText():null));
}
else
{
StringBuilder tmp = new StringBuilder("<chunk name=\"");
tmp.append((n!=null?n.getText():null));
tmp.append("\" type=\"");
tmp.append((p!=null?p.getText():null));
tmp.append("\" ");
if( (sl==null || sl.size()==0)
&&(params==null || params.size()==0))
{
//short closure
tmp.append("/>");
collection.add(tmp);
}
else
{
//long closer
tmp.append(">");
collection.add(tmp);
if(sl!=null)
collection.addAll(indent(sl,2));
if(params!=null)
collection.addAll(indent(params,2));
collection.add(new StringBuilder("</chunk>"));
}
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "chunk"
// $ANTLR start "production"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:618:1: production returns [Collection<StringBuilder> collection] : ^(p= PRODUCTION n= NAME conds= conditions acts= actions (params= parameters )? ) ;
public final Collection<StringBuilder> production() throws RecognitionException {
Collection<StringBuilder> collection = null;
CommonTree p=null;
CommonTree n=null;
List<StringBuilder> conds = null;
List<StringBuilder> acts = null;
List<StringBuilder> params = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:622:1: ( ^(p= PRODUCTION n= NAME conds= conditions acts= actions (params= parameters )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:622:3: ^(p= PRODUCTION n= NAME conds= conditions acts= actions (params= parameters )? )
{
p=(CommonTree)match(input,PRODUCTION,FOLLOW_PRODUCTION_in_production1669);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_production1673);
pushFollow(FOLLOW_conditions_in_production1677);
conds=conditions();
state._fsp--;
pushFollow(FOLLOW_actions_in_production1681);
acts=actions();
state._fsp--;
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:622:55: (params= parameters )?
int alt37=2;
int LA37_0 = input.LA(1);
if ( (LA37_0==PARAMETERS) ) {
alt37=1;
}
switch (alt37) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:622:56: params= parameters
{
pushFollow(FOLLOW_parameters_in_production1686);
params=parameters();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
if(shouldIgnore(p))
{
//should we note this with a comment?
LOGGER.debug("Ignoring production "+(n!=null?n.getText():null));
}
else
{
StringBuilder tmp = new StringBuilder("<production name=\"");
tmp.append((n!=null?n.getText():null));
tmp.append("\">");
collection.add(tmp);
collection.addAll(indent(conds,2));
collection.addAll(indent(acts,2));
if(params!=null)
collection.addAll(indent(params,2));
collection.add(new StringBuilder("</production>"));
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "production"
// $ANTLR start "conditions"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:647:1: conditions returns [List<StringBuilder> collection] : ^( CONDITIONS (tmp= pattern | tmp= queryCondition | tmp= scriptableCondition | tmp= proxyCondition )+ ) ;
public final List<StringBuilder> conditions() throws RecognitionException {
List<StringBuilder> collection = null;
List<StringBuilder> tmp = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:651:1: ( ^( CONDITIONS (tmp= pattern | tmp= queryCondition | tmp= scriptableCondition | tmp= proxyCondition )+ ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:651:3: ^( CONDITIONS (tmp= pattern | tmp= queryCondition | tmp= scriptableCondition | tmp= proxyCondition )+ )
{
match(input,CONDITIONS,FOLLOW_CONDITIONS_in_conditions1711);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:651:16: (tmp= pattern | tmp= queryCondition | tmp= scriptableCondition | tmp= proxyCondition )+
int cnt38=0;
loop38:
do {
int alt38=5;
switch ( input.LA(1) ) {
case MATCH_CONDITION:
{
alt38=1;
}
break;
case QUERY_CONDITION:
{
alt38=2;
}
break;
case SCRIPTABLE_CONDITION:
{
alt38=3;
}
break;
case PROXY_CONDITION:
{
alt38=4;
}
break;
}
switch (alt38) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:651:17: tmp= pattern
{
pushFollow(FOLLOW_pattern_in_conditions1716);
tmp=pattern();
state._fsp--;
collection.addAll(indent(tmp,1));
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:652:17: tmp= queryCondition
{
pushFollow(FOLLOW_queryCondition_in_conditions1738);
tmp=queryCondition();
state._fsp--;
collection.addAll(indent(tmp,1));
}
break;
case 3 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:653:17: tmp= scriptableCondition
{
pushFollow(FOLLOW_scriptableCondition_in_conditions1760);
tmp=scriptableCondition();
state._fsp--;
collection.addAll(indent(tmp,1));
}
break;
case 4 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:654:17: tmp= proxyCondition
{
pushFollow(FOLLOW_proxyCondition_in_conditions1782);
tmp=proxyCondition();
state._fsp--;
collection.addAll(indent(tmp,1));
}
break;
default :
if ( cnt38 >= 1 ) break loop38;
EarlyExitException eee =
new EarlyExitException(38, input);
throw eee;
}
cnt38++;
} while (true);
match(input, Token.UP, null);
collection.add(0,new StringBuilder("<conditions>"));
collection.add(new StringBuilder("</conditions>"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "conditions"
// $ANTLR start "pattern"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:661:1: pattern returns [List<StringBuilder> collection] : ^(p= MATCH_CONDITION n= NAME ( (c= CHUNK_IDENTIFIER | ct= CHUNK_TYPE_IDENTIFIER | v= VARIABLE ) (sl= slots )? )? ) ;
public final List<StringBuilder> pattern() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree p=null;
CommonTree n=null;
CommonTree c=null;
CommonTree ct=null;
CommonTree v=null;
Collection<StringBuilder> sl = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:665:1: ( ^(p= MATCH_CONDITION n= NAME ( (c= CHUNK_IDENTIFIER | ct= CHUNK_TYPE_IDENTIFIER | v= VARIABLE ) (sl= slots )? )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:665:3: ^(p= MATCH_CONDITION n= NAME ( (c= CHUNK_IDENTIFIER | ct= CHUNK_TYPE_IDENTIFIER | v= VARIABLE ) (sl= slots )? )? )
{
p=(CommonTree)match(input,MATCH_CONDITION,FOLLOW_MATCH_CONDITION_in_pattern1824);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_pattern1828);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:665:30: ( (c= CHUNK_IDENTIFIER | ct= CHUNK_TYPE_IDENTIFIER | v= VARIABLE ) (sl= slots )? )?
int alt41=2;
int LA41_0 = input.LA(1);
if ( (LA41_0==VARIABLE||(LA41_0>=CHUNK_IDENTIFIER && LA41_0<=CHUNK_TYPE_IDENTIFIER)) ) {
alt41=1;
}
switch (alt41) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:665:31: (c= CHUNK_IDENTIFIER | ct= CHUNK_TYPE_IDENTIFIER | v= VARIABLE ) (sl= slots )?
{
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:665:31: (c= CHUNK_IDENTIFIER | ct= CHUNK_TYPE_IDENTIFIER | v= VARIABLE )
int alt39=3;
switch ( input.LA(1) ) {
case CHUNK_IDENTIFIER:
{
alt39=1;
}
break;
case CHUNK_TYPE_IDENTIFIER:
{
alt39=2;
}
break;
case VARIABLE:
{
alt39=3;
}
break;
default:
NoViableAltException nvae =
new NoViableAltException("", 39, 0, input);
throw nvae;
}
switch (alt39) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:665:32: c= CHUNK_IDENTIFIER
{
c=(CommonTree)match(input,CHUNK_IDENTIFIER,FOLLOW_CHUNK_IDENTIFIER_in_pattern1834);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:665:53: ct= CHUNK_TYPE_IDENTIFIER
{
ct=(CommonTree)match(input,CHUNK_TYPE_IDENTIFIER,FOLLOW_CHUNK_TYPE_IDENTIFIER_in_pattern1840);
}
break;
case 3 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:665:80: v= VARIABLE
{
v=(CommonTree)match(input,VARIABLE,FOLLOW_VARIABLE_in_pattern1846);
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:666:13: (sl= slots )?
int alt40=2;
int LA40_0 = input.LA(1);
if ( (LA40_0==SLOTS) ) {
alt40=1;
}
switch (alt40) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:666:14: sl= slots
{
pushFollow(FOLLOW_slots_in_pattern1865);
sl=slots();
state._fsp--;
collection.addAll(indent(sl,2));
}
break;
}
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<match buffer=\"");
tmp.append((n!=null?n.getText():null));
tmp.append("\" ");
boolean empty = v==null && c==null && ct==null;
if(!empty)
{
if(v!=null || c!=null)
{
//referring to a specific chunk
tmp.append("chunk=\"");
if(v!=null)
tmp.append((v!=null?v.getText():null));
else
tmp.append((c!=null?c.getText():null));
tmp.append("\"");
}
else
{
tmp.append("type=\"");
tmp.append((ct!=null?ct.getText():null));
tmp.append("\" ");
}
tmp.append(">");
collection.add(0, tmp);
collection.add(new StringBuilder("</match>"));
}
else
{
tmp.append("/>");
collection.add(0, tmp);
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "pattern"
// $ANTLR start "queryCondition"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:704:1: queryCondition returns [List<StringBuilder> collection] : ^(q= QUERY_CONDITION n= NAME (sl= slots )? ) ;
public final List<StringBuilder> queryCondition() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree q=null;
CommonTree n=null;
Collection<StringBuilder> sl = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:708:1: ( ^(q= QUERY_CONDITION n= NAME (sl= slots )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:708:3: ^(q= QUERY_CONDITION n= NAME (sl= slots )? )
{
q=(CommonTree)match(input,QUERY_CONDITION,FOLLOW_QUERY_CONDITION_in_queryCondition1907);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_queryCondition1911);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:709:13: (sl= slots )?
int alt42=2;
int LA42_0 = input.LA(1);
if ( (LA42_0==SLOTS) ) {
alt42=1;
}
switch (alt42) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:709:14: sl= slots
{
pushFollow(FOLLOW_slots_in_queryCondition1928);
sl=slots();
state._fsp--;
collection.addAll(indent(sl,2));
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<query buffer=\"");
tmp.append((n!=null?n.getText():null));
if(collection.size()!=0)
{
tmp.append("\" >");
collection.add(0, tmp);
collection.add(new StringBuilder("</query>"));
}
else
{
tmp.append("\"/>");
collection.add(0,tmp);
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "queryCondition"
// $ANTLR start "scriptableCondition"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:728:1: scriptableCondition returns [List<StringBuilder> collection] : ^(sc= SCRIPTABLE_CONDITION l= LANG s= SCRIPT ) ;
public final List<StringBuilder> scriptableCondition() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree sc=null;
CommonTree l=null;
CommonTree s=null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:732:1: ( ^(sc= SCRIPTABLE_CONDITION l= LANG s= SCRIPT ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:732:3: ^(sc= SCRIPTABLE_CONDITION l= LANG s= SCRIPT )
{
sc=(CommonTree)match(input,SCRIPTABLE_CONDITION,FOLLOW_SCRIPTABLE_CONDITION_in_scriptableCondition1971);
match(input, Token.DOWN, null);
l=(CommonTree)match(input,LANG,FOLLOW_LANG_in_scriptableCondition1975);
s=(CommonTree)match(input,SCRIPT,FOLLOW_SCRIPT_in_scriptableCondition1979);
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<scriptable-condition lang=\"");
tmp.append((l!=null?l.getText():null)).append("\">");
collection.add(tmp);
collection.add(new StringBuilder("<![CDATA["));
String code = (s!=null?s.getText():null);
String[] lines = code.split("\n");
for(int i=0;i<lines.length;i++)
collection.add(indent(new StringBuilder(lines[i]),2));
collection.add(new StringBuilder("]]>"));
collection.add(new StringBuilder("</scriptable-condition>"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "scriptableCondition"
// $ANTLR start "proxyCondition"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:746:1: proxyCondition returns [List<StringBuilder> collection] : ^(p= PROXY_CONDITION c= CLASS_SPEC (sl= slots )? ) ;
public final List<StringBuilder> proxyCondition() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree p=null;
CommonTree c=null;
Collection<StringBuilder> sl = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:750:1: ( ^(p= PROXY_CONDITION c= CLASS_SPEC (sl= slots )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:750:3: ^(p= PROXY_CONDITION c= CLASS_SPEC (sl= slots )? )
{
p=(CommonTree)match(input,PROXY_CONDITION,FOLLOW_PROXY_CONDITION_in_proxyCondition2002);
match(input, Token.DOWN, null);
c=(CommonTree)match(input,CLASS_SPEC,FOLLOW_CLASS_SPEC_in_proxyCondition2006);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:750:36: (sl= slots )?
int alt43=2;
int LA43_0 = input.LA(1);
if ( (LA43_0==SLOTS) ) {
alt43=1;
}
switch (alt43) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:750:37: sl= slots
{
pushFollow(FOLLOW_slots_in_proxyCondition2011);
sl=slots();
state._fsp--;
collection.addAll(indent(sl,2));
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<proxy-condition class=\"");
tmp.append((c!=null?c.getText():null));
if(collection.size()==0)
{
tmp.append("\" />");
}
else
{
tmp.append("\">");
collection.add(new StringBuilder("</proxy-condition>"));
}
collection.add(0, tmp);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "proxyCondition"
// $ANTLR start "actions"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:766:1: actions returns [List<StringBuilder> collection] : ^( ACTIONS (tmp= add | tmp= set | tmp= modify | tmp= remove | tmp= output | tmp= scriptableAction | tmp= proxyAction )+ ) ;
public final List<StringBuilder> actions() throws RecognitionException {
List<StringBuilder> collection = null;
List<StringBuilder> tmp = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:770:1: ( ^( ACTIONS (tmp= add | tmp= set | tmp= modify | tmp= remove | tmp= output | tmp= scriptableAction | tmp= proxyAction )+ ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:770:3: ^( ACTIONS (tmp= add | tmp= set | tmp= modify | tmp= remove | tmp= output | tmp= scriptableAction | tmp= proxyAction )+ )
{
match(input,ACTIONS,FOLLOW_ACTIONS_in_actions2037);
match(input, Token.DOWN, null);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:770:13: (tmp= add | tmp= set | tmp= modify | tmp= remove | tmp= output | tmp= scriptableAction | tmp= proxyAction )+
int cnt44=0;
loop44:
do {
int alt44=8;
switch ( input.LA(1) ) {
case ADD_ACTION:
{
alt44=1;
}
break;
case SET_ACTION:
{
alt44=2;
}
break;
case MODIFY_ACTION:
{
alt44=3;
}
break;
case REMOVE_ACTION:
{
alt44=4;
}
break;
case OUTPUT_ACTION:
{
alt44=5;
}
break;
case SCRIPTABLE_ACTION:
{
alt44=6;
}
break;
case PROXY_ACTION:
{
alt44=7;
}
break;
}
switch (alt44) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:770:14: tmp= add
{
pushFollow(FOLLOW_add_in_actions2042);
tmp=add();
state._fsp--;
collection.addAll(indent(tmp,2));
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:771:11: tmp= set
{
pushFollow(FOLLOW_set_in_actions2058);
tmp=set();
state._fsp--;
collection.addAll(indent(tmp,2));
}
break;
case 3 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:772:11: tmp= modify
{
pushFollow(FOLLOW_modify_in_actions2074);
tmp=modify();
state._fsp--;
collection.addAll(indent(tmp,2));
}
break;
case 4 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:773:11: tmp= remove
{
pushFollow(FOLLOW_remove_in_actions2090);
tmp=remove();
state._fsp--;
collection.addAll(indent(tmp,2));
}
break;
case 5 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:774:11: tmp= output
{
pushFollow(FOLLOW_output_in_actions2106);
tmp=output();
state._fsp--;
collection.addAll(indent(tmp,2));
}
break;
case 6 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:775:11: tmp= scriptableAction
{
pushFollow(FOLLOW_scriptableAction_in_actions2122);
tmp=scriptableAction();
state._fsp--;
collection.addAll(indent(tmp,2));
}
break;
case 7 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:776:11: tmp= proxyAction
{
pushFollow(FOLLOW_proxyAction_in_actions2138);
tmp=proxyAction();
state._fsp--;
collection.addAll(indent(tmp,2));
}
break;
default :
if ( cnt44 >= 1 ) break loop44;
EarlyExitException eee =
new EarlyExitException(44, input);
throw eee;
}
cnt44++;
} while (true);
match(input, Token.UP, null);
collection.add(0, new StringBuilder("<actions>"));
collection.add(new StringBuilder("</actions>"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "actions"
// $ANTLR start "add"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:783:1: add returns [List<StringBuilder> collection] : ^(a= ADD_ACTION n= NAME (c= CHUNK_IDENTIFIER | ct= CHUNK_TYPE_IDENTIFIER | v= VARIABLE )? (sl= slots )? ) ;
public final List<StringBuilder> add() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree a=null;
CommonTree n=null;
CommonTree c=null;
CommonTree ct=null;
CommonTree v=null;
Collection<StringBuilder> sl = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:787:1: ( ^(a= ADD_ACTION n= NAME (c= CHUNK_IDENTIFIER | ct= CHUNK_TYPE_IDENTIFIER | v= VARIABLE )? (sl= slots )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:787:3: ^(a= ADD_ACTION n= NAME (c= CHUNK_IDENTIFIER | ct= CHUNK_TYPE_IDENTIFIER | v= VARIABLE )? (sl= slots )? )
{
a=(CommonTree)match(input,ADD_ACTION,FOLLOW_ADD_ACTION_in_add2174);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_add2178);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:787:25: (c= CHUNK_IDENTIFIER | ct= CHUNK_TYPE_IDENTIFIER | v= VARIABLE )?
int alt45=4;
switch ( input.LA(1) ) {
case CHUNK_IDENTIFIER:
{
alt45=1;
}
break;
case CHUNK_TYPE_IDENTIFIER:
{
alt45=2;
}
break;
case VARIABLE:
{
alt45=3;
}
break;
}
switch (alt45) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:787:26: c= CHUNK_IDENTIFIER
{
c=(CommonTree)match(input,CHUNK_IDENTIFIER,FOLLOW_CHUNK_IDENTIFIER_in_add2183);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:787:47: ct= CHUNK_TYPE_IDENTIFIER
{
ct=(CommonTree)match(input,CHUNK_TYPE_IDENTIFIER,FOLLOW_CHUNK_TYPE_IDENTIFIER_in_add2189);
}
break;
case 3 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:787:74: v= VARIABLE
{
v=(CommonTree)match(input,VARIABLE,FOLLOW_VARIABLE_in_add2195);
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:788:15: (sl= slots )?
int alt46=2;
int LA46_0 = input.LA(1);
if ( (LA46_0==SLOTS) ) {
alt46=1;
}
switch (alt46) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:788:16: sl= slots
{
pushFollow(FOLLOW_slots_in_add2217);
sl=slots();
state._fsp--;
collection.addAll(indent(sl,2));
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<add buffer=\"");
tmp.append((n!=null?n.getText():null));
tmp.append("\" ");
if(v!=null || c!=null)
{
tmp.append("chunk=\"");
if(v!=null)
tmp.append((v!=null?v.getText():null));
else
tmp.append((c!=null?c.getText():null));
tmp.append("\"");
}
else if(ct!=null)
{
//see the comments in pattern regarding this ambiguity
tmp.append("type=\"");
tmp.append((ct!=null?ct.getText():null));
tmp.append("\"");
}
if(collection.size()==0)
tmp.append("/>");
else
tmp.append(">");
collection.add(0,tmp);
if(collection.size()>1)
collection.add(new StringBuilder("</add>"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "add"
// $ANTLR start "set"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:822:1: set returns [List<StringBuilder> collection] : ^(a= SET_ACTION n= NAME (c= CHUNK_IDENTIFIER | v= VARIABLE )? (sl= slots )? ) ;
public final List<StringBuilder> set() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree a=null;
CommonTree n=null;
CommonTree c=null;
CommonTree v=null;
Collection<StringBuilder> sl = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:826:1: ( ^(a= SET_ACTION n= NAME (c= CHUNK_IDENTIFIER | v= VARIABLE )? (sl= slots )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:826:3: ^(a= SET_ACTION n= NAME (c= CHUNK_IDENTIFIER | v= VARIABLE )? (sl= slots )? )
{
a=(CommonTree)match(input,SET_ACTION,FOLLOW_SET_ACTION_in_set2260);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_set2264);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:826:25: (c= CHUNK_IDENTIFIER | v= VARIABLE )?
int alt47=3;
int LA47_0 = input.LA(1);
if ( (LA47_0==CHUNK_IDENTIFIER) ) {
alt47=1;
}
else if ( (LA47_0==VARIABLE) ) {
alt47=2;
}
switch (alt47) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:826:26: c= CHUNK_IDENTIFIER
{
c=(CommonTree)match(input,CHUNK_IDENTIFIER,FOLLOW_CHUNK_IDENTIFIER_in_set2269);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:826:47: v= VARIABLE
{
v=(CommonTree)match(input,VARIABLE,FOLLOW_VARIABLE_in_set2275);
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:827:15: (sl= slots )?
int alt48=2;
int LA48_0 = input.LA(1);
if ( (LA48_0==SLOTS) ) {
alt48=1;
}
switch (alt48) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:827:16: sl= slots
{
pushFollow(FOLLOW_slots_in_set2297);
sl=slots();
state._fsp--;
collection.addAll(indent(sl,2));
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<set buffer=\"");
tmp.append((n!=null?n.getText():null));
tmp.append("\" ");
if(v!=null || c!=null)
{
tmp.append("chunk=\"");
if(v!=null)
tmp.append((v!=null?v.getText():null));
else
tmp.append((c!=null?c.getText():null));
tmp.append("\"");
}
if(collection.size()==0)
tmp.append("/>");
else
tmp.append(">");
collection.add(0,tmp);
if(collection.size()>1)
collection.add(new StringBuilder("</set>"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "set"
// $ANTLR start "scriptableAction"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:853:1: scriptableAction returns [List<StringBuilder> collection] : ^(sc= SCRIPTABLE_ACTION l= LANG s= SCRIPT ) ;
public final List<StringBuilder> scriptableAction() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree sc=null;
CommonTree l=null;
CommonTree s=null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:857:1: ( ^(sc= SCRIPTABLE_ACTION l= LANG s= SCRIPT ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:857:3: ^(sc= SCRIPTABLE_ACTION l= LANG s= SCRIPT )
{
sc=(CommonTree)match(input,SCRIPTABLE_ACTION,FOLLOW_SCRIPTABLE_ACTION_in_scriptableAction2339);
match(input, Token.DOWN, null);
l=(CommonTree)match(input,LANG,FOLLOW_LANG_in_scriptableAction2343);
s=(CommonTree)match(input,SCRIPT,FOLLOW_SCRIPT_in_scriptableAction2347);
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<scriptable-action lang=\"");
tmp.append((l!=null?l.getText():null)).append("\">");
collection.add(tmp);
collection.add(new StringBuilder("<![CDATA["));
String code = (s!=null?s.getText():null);
String[] lines = code.split("\n");
for(int i=0;i<lines.length;i++)
collection.add(indent(new StringBuilder(lines[i]),2));
collection.add(new StringBuilder("]]>"));
collection.add(new StringBuilder("</scriptable-action>"));
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "scriptableAction"
// $ANTLR start "proxyAction"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:871:1: proxyAction returns [List<StringBuilder> collection] : ^(p= PROXY_ACTION c= CLASS_SPEC (sl= slots )? ) ;
public final List<StringBuilder> proxyAction() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree p=null;
CommonTree c=null;
Collection<StringBuilder> sl = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:875:1: ( ^(p= PROXY_ACTION c= CLASS_SPEC (sl= slots )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:875:3: ^(p= PROXY_ACTION c= CLASS_SPEC (sl= slots )? )
{
p=(CommonTree)match(input,PROXY_ACTION,FOLLOW_PROXY_ACTION_in_proxyAction2372);
match(input, Token.DOWN, null);
c=(CommonTree)match(input,CLASS_SPEC,FOLLOW_CLASS_SPEC_in_proxyAction2376);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:875:33: (sl= slots )?
int alt49=2;
int LA49_0 = input.LA(1);
if ( (LA49_0==SLOTS) ) {
alt49=1;
}
switch (alt49) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:875:34: sl= slots
{
pushFollow(FOLLOW_slots_in_proxyAction2381);
sl=slots();
state._fsp--;
collection.addAll(indent(sl,2));
}
break;
}
match(input, Token.UP, null);
if((c!=null?c.getText():null).equals("org.jactr.core.production.action.StopAction"))
{
//dump the short version
collection.add(new StringBuilder("<stop />"));
}
else
{
StringBuilder tmp = new StringBuilder("<proxy-action class=\"");
tmp.append((c!=null?c.getText():null));
if(collection.size()==0)
tmp.append("\" />");
else
{
tmp.append("\">");
collection.add(new StringBuilder("</proxy-action>"));
}
collection.add(0, tmp);
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "proxyAction"
// $ANTLR start "modify"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:897:1: modify returns [List<StringBuilder> collection] : ^(m= MODIFY_ACTION n= NAME (sl= slots )? ) ;
public final List<StringBuilder> modify() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree m=null;
CommonTree n=null;
Collection<StringBuilder> sl = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:901:1: ( ^(m= MODIFY_ACTION n= NAME (sl= slots )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:901:3: ^(m= MODIFY_ACTION n= NAME (sl= slots )? )
{
m=(CommonTree)match(input,MODIFY_ACTION,FOLLOW_MODIFY_ACTION_in_modify2411);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_modify2415);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:902:10: (sl= slots )?
int alt50=2;
int LA50_0 = input.LA(1);
if ( (LA50_0==SLOTS) ) {
alt50=1;
}
switch (alt50) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:902:11: sl= slots
{
pushFollow(FOLLOW_slots_in_modify2430);
sl=slots();
state._fsp--;
collection.addAll(indent(sl,2));
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<modify buffer=\"");
tmp.append((n!=null?n.getText():null));
if(collection.size()!=0)
{
tmp.append("\">");
collection.add(0, tmp);
collection.add(new StringBuilder("</modify>"));
}
else
{
tmp.append("\"/>");
collection.add(0, tmp);
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "modify"
// $ANTLR start "remove"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:920:1: remove returns [List<StringBuilder> collection] : ^(r= REMOVE_ACTION n= NAME (i= IDENTIFIER | i= VARIABLE )? (sl= slots )? ) ;
public final List<StringBuilder> remove() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree r=null;
CommonTree n=null;
CommonTree i=null;
Collection<StringBuilder> sl = null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:924:1: ( ^(r= REMOVE_ACTION n= NAME (i= IDENTIFIER | i= VARIABLE )? (sl= slots )? ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:924:3: ^(r= REMOVE_ACTION n= NAME (i= IDENTIFIER | i= VARIABLE )? (sl= slots )? )
{
r=(CommonTree)match(input,REMOVE_ACTION,FOLLOW_REMOVE_ACTION_in_remove2467);
match(input, Token.DOWN, null);
n=(CommonTree)match(input,NAME,FOLLOW_NAME_in_remove2471);
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:924:28: (i= IDENTIFIER | i= VARIABLE )?
int alt51=3;
int LA51_0 = input.LA(1);
if ( (LA51_0==IDENTIFIER) ) {
alt51=1;
}
else if ( (LA51_0==VARIABLE) ) {
alt51=2;
}
switch (alt51) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:924:29: i= IDENTIFIER
{
i=(CommonTree)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_remove2476);
}
break;
case 2 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:924:44: i= VARIABLE
{
i=(CommonTree)match(input,VARIABLE,FOLLOW_VARIABLE_in_remove2482);
}
break;
}
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:925:8: (sl= slots )?
int alt52=2;
int LA52_0 = input.LA(1);
if ( (LA52_0==SLOTS) ) {
alt52=1;
}
switch (alt52) {
case 1 :
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:925:9: sl= slots
{
pushFollow(FOLLOW_slots_in_remove2496);
sl=slots();
state._fsp--;
collection.addAll(indent(sl,2));
}
break;
}
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<remove buffer=\"");
tmp.append((n!=null?n.getText():null));
if(collection.size()!=0)
{
tmp.append("\">");
collection.add(0, tmp);
collection.add(new StringBuilder("</remove>"));
}
else
{
tmp.append("\"/>");
collection.add(0, tmp);
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "remove"
// $ANTLR start "output"
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:943:1: output returns [List<StringBuilder> collection] : ^(o= OUTPUT_ACTION s= STRING ) ;
public final List<StringBuilder> output() throws RecognitionException {
List<StringBuilder> collection = null;
CommonTree o=null;
CommonTree s=null;
collection = new ArrayList<StringBuilder>();
try {
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:947:1: ( ^(o= OUTPUT_ACTION s= STRING ) )
// /Users/harrison/Archive/Development/git/jactr/org.jactr.io/src/org/jactr/io/antlr3/generator/xml/JACTRGenerator.g:947:3: ^(o= OUTPUT_ACTION s= STRING )
{
o=(CommonTree)match(input,OUTPUT_ACTION,FOLLOW_OUTPUT_ACTION_in_output2530);
match(input, Token.DOWN, null);
s=(CommonTree)match(input,STRING,FOLLOW_STRING_in_output2534);
match(input, Token.UP, null);
StringBuilder tmp = new StringBuilder("<output>\"");
tmp.append((s!=null?s.getText():null));
tmp.append("\"</output>");
collection.add(tmp);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
}
return collection;
}
// $ANTLR end "output"
// Delegated rules
public static final BitSet FOLLOW_MODEL_in_model328 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_model343 = new BitSet(new long[]{0x0000000000000040L});
public static final BitSet FOLLOW_modules_in_model360 = new BitSet(new long[]{0x0000000000000100L});
public static final BitSet FOLLOW_extensions_in_model375 = new BitSet(new long[]{0x0000000000040000L});
public static final BitSet FOLLOW_buffers_in_model390 = new BitSet(new long[]{0x0000000000000020L});
public static final BitSet FOLLOW_LIBRARY_in_model404 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_declarative_memory_in_model421 = new BitSet(new long[]{0x0000000000004000L});
public static final BitSet FOLLOW_procedural_memory_in_model437 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_parameters_in_model454 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_PARAMETERS_in_parameters491 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_parameter_in_parameters496 = new BitSet(new long[]{0x0000000000020008L});
public static final BitSet FOLLOW_PARAMETERS_in_parameters510 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_PARAMETER_in_parameter534 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_parameter538 = new BitSet(new long[]{0x0000001000000000L});
public static final BitSet FOLLOW_STRING_in_parameter542 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_MODULES_in_modules566 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_module_in_modules576 = new BitSet(new long[]{0x0000000000000088L});
public static final BitSet FOLLOW_MODULES_in_modules590 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_MODULE_in_module613 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_CLASS_SPEC_in_module617 = new BitSet(new long[]{0x0000000000010008L});
public static final BitSet FOLLOW_parameters_in_module622 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_EXTENSIONS_in_extensions650 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_extension_in_extensions660 = new BitSet(new long[]{0x0000000000000208L});
public static final BitSet FOLLOW_EXTENSIONS_in_extensions674 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_EXTENSION_in_extension697 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_CLASS_SPEC_in_extension701 = new BitSet(new long[]{0x0000000000010008L});
public static final BitSet FOLLOW_parameters_in_extension706 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_BUFFERS_in_buffers729 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_buffer_in_buffers741 = new BitSet(new long[]{0x0000000000080008L});
public static final BitSet FOLLOW_BUFFERS_in_buffers757 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_BUFFER_in_buffer779 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_buffer783 = new BitSet(new long[]{0x0000000000001000L});
public static final BitSet FOLLOW_CHUNKS_in_buffer802 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_CHUNK_IDENTIFIER_in_buffer823 = new BitSet(new long[]{0x0000008000000008L});
public static final BitSet FOLLOW_CHUNKS_in_buffer847 = new BitSet(new long[]{0x0000000000010008L});
public static final BitSet FOLLOW_parameters_in_buffer867 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_DECLARATIVE_MEMORY_in_declarative_memory895 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_chunktype_in_declarative_memory907 = new BitSet(new long[]{0x0000000000000808L});
public static final BitSet FOLLOW_DECLARATIVE_MEMORY_in_declarative_memory920 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_PROCEDURAL_MEMORY_in_procedural_memory942 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_production_in_procedural_memory954 = new BitSet(new long[]{0x0000000000008008L});
public static final BitSet FOLLOW_PROCEDURAL_MEMORY_in_procedural_memory970 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_CHUNK_TYPE_in_chunktype993 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_chunktype1012 = new BitSet(new long[]{0x0100020000011008L});
public static final BitSet FOLLOW_parents_in_chunktype1031 = new BitSet(new long[]{0x0000020000011008L});
public static final BitSet FOLLOW_slots_in_chunktype1053 = new BitSet(new long[]{0x0000000000011008L});
public static final BitSet FOLLOW_chunks_in_chunktype1075 = new BitSet(new long[]{0x0000000000010008L});
public static final BitSet FOLLOW_parameters_in_chunktype1097 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_PARENTS_in_parents1120 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_PARENT_in_parents1130 = new BitSet(new long[]{0x0080000000000008L});
public static final BitSet FOLLOW_PARENTS_in_parents1145 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_SLOTS_in_slots1166 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_slot_in_slots1177 = new BitSet(new long[]{0x0010040000000008L});
public static final BitSet FOLLOW_logic_in_slots1190 = new BitSet(new long[]{0x0010040000000008L});
public static final BitSet FOLLOW_SLOTS_in_slots1203 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_CHUNKS_in_chunks1225 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_chunk_in_chunks1236 = new BitSet(new long[]{0x0000000000002008L});
public static final BitSet FOLLOW_CHUNKS_in_chunks1251 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_LOGIC_in_logic1273 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_AND_in_logic1278 = new BitSet(new long[]{0x0010040000000008L});
public static final BitSet FOLLOW_OR_in_logic1282 = new BitSet(new long[]{0x0010040000000008L});
public static final BitSet FOLLOW_NOT_in_logic1286 = new BitSet(new long[]{0x0010040000000008L});
public static final BitSet FOLLOW_logic_in_logic1292 = new BitSet(new long[]{0x0010040000000008L});
public static final BitSet FOLLOW_slot_in_logic1296 = new BitSet(new long[]{0x0010040000000008L});
public static final BitSet FOLLOW_logic_in_logic1302 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_slot_in_logic1306 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_SLOT_in_slot1331 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_slot1336 = new BitSet(new long[]{0x0003F80000000008L});
public static final BitSet FOLLOW_VARIABLE_in_slot1342 = new BitSet(new long[]{0x0003F80000000008L});
public static final BitSet FOLLOW_EQUALS_in_slot1356 = new BitSet(new long[]{0x0000007800000000L});
public static final BitSet FOLLOW_LT_in_slot1372 = new BitSet(new long[]{0x0000007800000000L});
public static final BitSet FOLLOW_GT_in_slot1391 = new BitSet(new long[]{0x0000007800000000L});
public static final BitSet FOLLOW_NOT_in_slot1410 = new BitSet(new long[]{0x0000007800000000L});
public static final BitSet FOLLOW_WITHIN_in_slot1428 = new BitSet(new long[]{0x0000007800000000L});
public static final BitSet FOLLOW_LTE_in_slot1444 = new BitSet(new long[]{0x0000007800000000L});
public static final BitSet FOLLOW_GTE_in_slot1463 = new BitSet(new long[]{0x0000007800000000L});
public static final BitSet FOLLOW_VARIABLE_in_slot1495 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_STRING_in_slot1511 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_IDENTIFIER_in_slot1528 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_NUMBER_in_slot1544 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_CHUNK_in_chunk1592 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_chunk1603 = new BitSet(new long[]{0x0080000000000000L});
public static final BitSet FOLLOW_PARENT_in_chunk1613 = new BitSet(new long[]{0x0000020000010008L});
public static final BitSet FOLLOW_slots_in_chunk1625 = new BitSet(new long[]{0x0000000000010008L});
public static final BitSet FOLLOW_parameters_in_chunk1639 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_PRODUCTION_in_production1669 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_production1673 = new BitSet(new long[]{0x0000000000100000L});
public static final BitSet FOLLOW_conditions_in_production1677 = new BitSet(new long[]{0x0000000002000000L});
public static final BitSet FOLLOW_actions_in_production1681 = new BitSet(new long[]{0x0000000000010008L});
public static final BitSet FOLLOW_parameters_in_production1686 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_CONDITIONS_in_conditions1711 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_pattern_in_conditions1716 = new BitSet(new long[]{0x0000000001E00008L});
public static final BitSet FOLLOW_queryCondition_in_conditions1738 = new BitSet(new long[]{0x0000000001E00008L});
public static final BitSet FOLLOW_scriptableCondition_in_conditions1760 = new BitSet(new long[]{0x0000000001E00008L});
public static final BitSet FOLLOW_proxyCondition_in_conditions1782 = new BitSet(new long[]{0x0000000001E00008L});
public static final BitSet FOLLOW_MATCH_CONDITION_in_pattern1824 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_pattern1828 = new BitSet(new long[]{0x0000018800000008L});
public static final BitSet FOLLOW_CHUNK_IDENTIFIER_in_pattern1834 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_CHUNK_TYPE_IDENTIFIER_in_pattern1840 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_VARIABLE_in_pattern1846 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_slots_in_pattern1865 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_QUERY_CONDITION_in_queryCondition1907 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_queryCondition1911 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_slots_in_queryCondition1928 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_SCRIPTABLE_CONDITION_in_scriptableCondition1971 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_LANG_in_scriptableCondition1975 = new BitSet(new long[]{0x0000000400000000L});
public static final BitSet FOLLOW_SCRIPT_in_scriptableCondition1979 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_PROXY_CONDITION_in_proxyCondition2002 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_CLASS_SPEC_in_proxyCondition2006 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_slots_in_proxyCondition2011 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_ACTIONS_in_actions2037 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_add_in_actions2042 = new BitSet(new long[]{0x00000001FC000008L});
public static final BitSet FOLLOW_set_in_actions2058 = new BitSet(new long[]{0x00000001FC000008L});
public static final BitSet FOLLOW_modify_in_actions2074 = new BitSet(new long[]{0x00000001FC000008L});
public static final BitSet FOLLOW_remove_in_actions2090 = new BitSet(new long[]{0x00000001FC000008L});
public static final BitSet FOLLOW_output_in_actions2106 = new BitSet(new long[]{0x00000001FC000008L});
public static final BitSet FOLLOW_scriptableAction_in_actions2122 = new BitSet(new long[]{0x00000001FC000008L});
public static final BitSet FOLLOW_proxyAction_in_actions2138 = new BitSet(new long[]{0x00000001FC000008L});
public static final BitSet FOLLOW_ADD_ACTION_in_add2174 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_add2178 = new BitSet(new long[]{0x0000038800000008L});
public static final BitSet FOLLOW_CHUNK_IDENTIFIER_in_add2183 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_CHUNK_TYPE_IDENTIFIER_in_add2189 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_VARIABLE_in_add2195 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_slots_in_add2217 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_SET_ACTION_in_set2260 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_set2264 = new BitSet(new long[]{0x0000028800000008L});
public static final BitSet FOLLOW_CHUNK_IDENTIFIER_in_set2269 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_VARIABLE_in_set2275 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_slots_in_set2297 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_SCRIPTABLE_ACTION_in_scriptableAction2339 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_LANG_in_scriptableAction2343 = new BitSet(new long[]{0x0000000400000000L});
public static final BitSet FOLLOW_SCRIPT_in_scriptableAction2347 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_PROXY_ACTION_in_proxyAction2372 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_CLASS_SPEC_in_proxyAction2376 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_slots_in_proxyAction2381 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_MODIFY_ACTION_in_modify2411 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_modify2415 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_slots_in_modify2430 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_REMOVE_ACTION_in_remove2467 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_NAME_in_remove2471 = new BitSet(new long[]{0x0000024800000008L});
public static final BitSet FOLLOW_IDENTIFIER_in_remove2476 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_VARIABLE_in_remove2482 = new BitSet(new long[]{0x0000020000000008L});
public static final BitSet FOLLOW_slots_in_remove2496 = new BitSet(new long[]{0x0000000000000008L});
public static final BitSet FOLLOW_OUTPUT_ACTION_in_output2530 = new BitSet(new long[]{0x0000000000000004L});
public static final BitSet FOLLOW_STRING_in_output2534 = new BitSet(new long[]{0x0000000000000008L});
}