1 package net.sf.jabref.bst;
2 // $ANTLR 3.0b4 bst.g 2006-09-17 01:45:41
4 import org.antlr.runtime.*;
5 import java.util.Stack;
7 import java.util.ArrayList;
10 import org.antlr.runtime.tree.*;
12 public class Bst extends Parser {
13 public static final String[] tokenNames = new String[] {
14 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "IDLIST", "STACK", "ENTRY", "COMMANDS", "STRINGS", "INTEGERS", "FUNCTION", "MACRO", "STRING", "READ", "EXECUTE", "ITERATE", "REVERSE", "SORT", "IDENTIFIER", "INTEGER", "QUOTED", "LETTER", "NUMERAL", "WS", "LINE_COMMENT", "'{'", "'}'", "'<'", "'>'", "'='", "'+'", "'-'", "':='", "'*'", "'add.period$'", "'call.type$'", "'change.case$'", "'chr.to.int$'", "'cite$'", "'duplicat$'", "'empty$'", "'format.name$'", "'if$'", "'int.to.chr$'", "'int.to.str$'", "'missing$'", "'newline$'", "'num.names$'", "'pop$'", "'preamble$'", "'purify$'", "'quote$'", "'skip$'", "'stack$'", "'substring$'", "'swap$'", "'text.length$'", "'text.prefix$'", "'top$'", "'type$'", "'warning$'", "'while$'", "'width$'", "'write$'"
16 public static final int LETTER=21;
17 public static final int ENTRY=6;
18 public static final int INTEGERS=9;
19 public static final int WS=23;
20 public static final int COMMANDS=7;
21 public static final int STRING=12;
22 public static final int EXECUTE=14;
23 public static final int LINE_COMMENT=24;
24 public static final int SORT=17;
25 public static final int STACK=5;
26 public static final int REVERSE=16;
27 public static final int QUOTED=20;
28 public static final int INTEGER=19;
29 public static final int ITERATE=15;
30 public static final int FUNCTION=10;
31 public static final int EOF=-1;
32 public static final int STRINGS=8;
33 public static final int IDENTIFIER=18;
34 public static final int MACRO=11;
35 public static final int IDLIST=4;
36 public static final int NUMERAL=22;
37 public static final int READ=13;
39 public Bst(TokenStream input) {
43 protected TreeAdaptor adaptor = new CommonTreeAdaptor();
45 public void setTreeAdaptor(TreeAdaptor adaptor) {
46 this.adaptor = adaptor;
48 public TreeAdaptor getTreeAdaptor() {
52 public String[] getTokenNames() { return tokenNames; }
53 public String getGrammarFileName() { return "bst.g"; }
56 public static class program_return extends ParserRuleReturnScope {
58 public Object getTree() { return tree; }
61 // $ANTLR start program
62 // bst.g:14:1: program : ( commands )+ -> ^( COMMANDS ( commands )+ ) ;
63 public program_return program() throws RecognitionException {
64 program_return retval = new program_return();
65 retval.start = input.LT(1);
69 commands_return commands1 = null;
71 List list_commands=new ArrayList();
74 // bst.g:14:11: ( ( commands )+ -> ^( COMMANDS ( commands )+ ) )
75 // bst.g:14:11: ( commands )+
77 // bst.g:14:11: ( commands )+
82 int LA1_0 = input.LA(1);
83 if ( (LA1_0==ENTRY||(LA1_0>=STRINGS && LA1_0<=MACRO)||(LA1_0>=READ && LA1_0<=SORT)) ) {
90 // bst.g:14:11: commands
92 pushFollow(FOLLOW_commands_in_program45);
96 list_commands.add(commands1.tree);
102 if ( cnt1 >= 1 ) break loop1;
103 EarlyExitException eee =
104 new EarlyExitException(1, input);
113 retval.tree = root_0;
114 root_0 = (Object)adaptor.nil();
115 // 14:21: -> ^( COMMANDS ( commands )+ )
117 // bst.g:14:24: ^( COMMANDS ( commands )+ )
119 Object root_1 = (Object)adaptor.nil();
120 root_1 = (Object)adaptor.becomeRoot(adaptor.create(COMMANDS, "COMMANDS"), root_1);
122 // bst.g:14:35: ( commands )+
124 int n_1 = list_commands == null ? 0 : list_commands.size();
128 if ( n_1==0 ) throw new RuntimeException("Must have more than one element for (...)+ loops");
129 for (int i_1=0; i_1<n_1; i_1++) {
130 adaptor.addChild(root_1, list_commands.get(i_1));
135 adaptor.addChild(root_0, root_1);
145 catch (RecognitionException re) {
150 retval.stop = input.LT(-1);
152 retval.tree = (Object)adaptor.rulePostProcessing(root_0);
153 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
158 // $ANTLR end program
160 public static class commands_return extends ParserRuleReturnScope {
162 public Object getTree() { return tree; }
165 // $ANTLR start commands
166 // bst.g:16:1: commands : ( STRINGS^^ idList | INTEGERS^^ idList | FUNCTION^^ id stack | MACRO^^ id '{'! STRING '}'! | READ^^ | EXECUTE^^ '{'! function '}'! | ITERATE^^ '{'! function '}'! | REVERSE^^ '{'! function '}'! | ENTRY^^ idList0 idList0 idList0 | SORT^^ );
167 public commands_return commands() throws RecognitionException {
168 commands_return retval = new commands_return();
169 retval.start = input.LT(1);
171 Object root_0 = null;
174 Token INTEGERS4=null;
175 Token FUNCTION6=null;
177 Token char_literal11=null;
179 Token char_literal13=null;
181 Token EXECUTE15=null;
182 Token char_literal16=null;
183 Token char_literal18=null;
184 Token ITERATE19=null;
185 Token char_literal20=null;
186 Token char_literal22=null;
187 Token REVERSE23=null;
188 Token char_literal24=null;
189 Token char_literal26=null;
192 idList_return idList3 = null;
194 idList_return idList5 = null;
196 id_return id7 = null;
198 stack_return stack8 = null;
200 id_return id10 = null;
202 function_return function17 = null;
204 function_return function21 = null;
206 function_return function25 = null;
208 idList0_return idList028 = null;
210 idList0_return idList029 = null;
212 idList0_return idList030 = null;
215 Object STRINGS2_tree=null;
216 Object INTEGERS4_tree=null;
217 Object FUNCTION6_tree=null;
218 Object MACRO9_tree=null;
219 Object char_literal11_tree=null;
220 Object STRING12_tree=null;
221 Object char_literal13_tree=null;
222 Object READ14_tree=null;
223 Object EXECUTE15_tree=null;
224 Object char_literal16_tree=null;
225 Object char_literal18_tree=null;
226 Object ITERATE19_tree=null;
227 Object char_literal20_tree=null;
228 Object char_literal22_tree=null;
229 Object REVERSE23_tree=null;
230 Object char_literal24_tree=null;
231 Object char_literal26_tree=null;
232 Object ENTRY27_tree=null;
233 Object SORT31_tree=null;
236 // bst.g:17:4: ( STRINGS^^ idList | INTEGERS^^ idList | FUNCTION^^ id stack | MACRO^^ id '{'! STRING '}'! | READ^^ | EXECUTE^^ '{'! function '}'! | ITERATE^^ '{'! function '}'! | REVERSE^^ '{'! function '}'! | ENTRY^^ idList0 idList0 idList0 | SORT^^ )
238 switch ( input.LA(1) ) {
270 NoViableAltException nvae =
271 new NoViableAltException("16:1: commands : ( STRINGS^^ idList | INTEGERS^^ idList | FUNCTION^^ id stack | MACRO^^ id '{'! STRING '}'! | READ^^ | EXECUTE^^ '{'! function '}'! | ITERATE^^ '{'! function '}'! | REVERSE^^ '{'! function '}'! | ENTRY^^ idList0 idList0 idList0 | SORT^^ );", 2, 0, input);
278 // bst.g:17:4: STRINGS^^ idList
280 root_0 = (Object)adaptor.nil();
282 STRINGS2=(Token)input.LT(1);
283 match(input,STRINGS,FOLLOW_STRINGS_in_commands65);
284 STRINGS2_tree = (Object)adaptor.create(STRINGS2);
285 root_0 = (Object)adaptor.becomeRoot(STRINGS2_tree, root_0);
287 pushFollow(FOLLOW_idList_in_commands68);
291 adaptor.addChild(root_0, idList3.tree);
296 // bst.g:18:4: INTEGERS^^ idList
298 root_0 = (Object)adaptor.nil();
300 INTEGERS4=(Token)input.LT(1);
301 match(input,INTEGERS,FOLLOW_INTEGERS_in_commands73);
302 INTEGERS4_tree = (Object)adaptor.create(INTEGERS4);
303 root_0 = (Object)adaptor.becomeRoot(INTEGERS4_tree, root_0);
305 pushFollow(FOLLOW_idList_in_commands76);
309 adaptor.addChild(root_0, idList5.tree);
314 // bst.g:19:4: FUNCTION^^ id stack
316 root_0 = (Object)adaptor.nil();
318 FUNCTION6=(Token)input.LT(1);
319 match(input,FUNCTION,FOLLOW_FUNCTION_in_commands81);
320 FUNCTION6_tree = (Object)adaptor.create(FUNCTION6);
321 root_0 = (Object)adaptor.becomeRoot(FUNCTION6_tree, root_0);
323 pushFollow(FOLLOW_id_in_commands84);
327 adaptor.addChild(root_0, id7.tree);
328 pushFollow(FOLLOW_stack_in_commands86);
332 adaptor.addChild(root_0, stack8.tree);
337 // bst.g:20:4: MACRO^^ id '{'! STRING '}'!
339 root_0 = (Object)adaptor.nil();
341 MACRO9=(Token)input.LT(1);
342 match(input,MACRO,FOLLOW_MACRO_in_commands91);
343 MACRO9_tree = (Object)adaptor.create(MACRO9);
344 root_0 = (Object)adaptor.becomeRoot(MACRO9_tree, root_0);
346 pushFollow(FOLLOW_id_in_commands94);
350 adaptor.addChild(root_0, id10.tree);
351 char_literal11=(Token)input.LT(1);
352 match(input,25,FOLLOW_25_in_commands96);
353 STRING12=(Token)input.LT(1);
354 match(input,STRING,FOLLOW_STRING_in_commands99);
355 STRING12_tree = (Object)adaptor.create(STRING12);
356 adaptor.addChild(root_0, STRING12_tree);
358 char_literal13=(Token)input.LT(1);
359 match(input,26,FOLLOW_26_in_commands101);
364 // bst.g:21:4: READ^^
366 root_0 = (Object)adaptor.nil();
368 READ14=(Token)input.LT(1);
369 match(input,READ,FOLLOW_READ_in_commands107);
370 READ14_tree = (Object)adaptor.create(READ14);
371 root_0 = (Object)adaptor.becomeRoot(READ14_tree, root_0);
377 // bst.g:22:4: EXECUTE^^ '{'! function '}'!
379 root_0 = (Object)adaptor.nil();
381 EXECUTE15=(Token)input.LT(1);
382 match(input,EXECUTE,FOLLOW_EXECUTE_in_commands113);
383 EXECUTE15_tree = (Object)adaptor.create(EXECUTE15);
384 root_0 = (Object)adaptor.becomeRoot(EXECUTE15_tree, root_0);
386 char_literal16=(Token)input.LT(1);
387 match(input,25,FOLLOW_25_in_commands116);
388 pushFollow(FOLLOW_function_in_commands119);
389 function17=function();
392 adaptor.addChild(root_0, function17.tree);
393 char_literal18=(Token)input.LT(1);
394 match(input,26,FOLLOW_26_in_commands121);
399 // bst.g:23:4: ITERATE^^ '{'! function '}'!
401 root_0 = (Object)adaptor.nil();
403 ITERATE19=(Token)input.LT(1);
404 match(input,ITERATE,FOLLOW_ITERATE_in_commands127);
405 ITERATE19_tree = (Object)adaptor.create(ITERATE19);
406 root_0 = (Object)adaptor.becomeRoot(ITERATE19_tree, root_0);
408 char_literal20=(Token)input.LT(1);
409 match(input,25,FOLLOW_25_in_commands130);
410 pushFollow(FOLLOW_function_in_commands133);
411 function21=function();
414 adaptor.addChild(root_0, function21.tree);
415 char_literal22=(Token)input.LT(1);
416 match(input,26,FOLLOW_26_in_commands135);
421 // bst.g:24:4: REVERSE^^ '{'! function '}'!
423 root_0 = (Object)adaptor.nil();
425 REVERSE23=(Token)input.LT(1);
426 match(input,REVERSE,FOLLOW_REVERSE_in_commands141);
427 REVERSE23_tree = (Object)adaptor.create(REVERSE23);
428 root_0 = (Object)adaptor.becomeRoot(REVERSE23_tree, root_0);
430 char_literal24=(Token)input.LT(1);
431 match(input,25,FOLLOW_25_in_commands144);
432 pushFollow(FOLLOW_function_in_commands147);
433 function25=function();
436 adaptor.addChild(root_0, function25.tree);
437 char_literal26=(Token)input.LT(1);
438 match(input,26,FOLLOW_26_in_commands149);
443 // bst.g:25:4: ENTRY^^ idList0 idList0 idList0
445 root_0 = (Object)adaptor.nil();
447 ENTRY27=(Token)input.LT(1);
448 match(input,ENTRY,FOLLOW_ENTRY_in_commands155);
449 ENTRY27_tree = (Object)adaptor.create(ENTRY27);
450 root_0 = (Object)adaptor.becomeRoot(ENTRY27_tree, root_0);
452 pushFollow(FOLLOW_idList0_in_commands158);
456 adaptor.addChild(root_0, idList028.tree);
457 pushFollow(FOLLOW_idList0_in_commands160);
461 adaptor.addChild(root_0, idList029.tree);
462 pushFollow(FOLLOW_idList0_in_commands162);
466 adaptor.addChild(root_0, idList030.tree);
471 // bst.g:26:4: SORT^^
473 root_0 = (Object)adaptor.nil();
475 SORT31=(Token)input.LT(1);
476 match(input,SORT,FOLLOW_SORT_in_commands167);
477 SORT31_tree = (Object)adaptor.create(SORT31);
478 root_0 = (Object)adaptor.becomeRoot(SORT31_tree, root_0);
486 catch (RecognitionException re) {
491 retval.stop = input.LT(-1);
493 retval.tree = (Object)adaptor.rulePostProcessing(root_0);
494 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
499 // $ANTLR end commands
501 public static class identifier_return extends ParserRuleReturnScope {
503 public Object getTree() { return tree; }
506 // $ANTLR start identifier
507 // bst.g:28:1: identifier : IDENTIFIER ;
508 public identifier_return identifier() throws RecognitionException {
509 identifier_return retval = new identifier_return();
510 retval.start = input.LT(1);
512 Object root_0 = null;
514 Token IDENTIFIER32=null;
516 Object IDENTIFIER32_tree=null;
519 // bst.g:29:4: ( IDENTIFIER )
520 // bst.g:29:4: IDENTIFIER
522 root_0 = (Object)adaptor.nil();
524 IDENTIFIER32=(Token)input.LT(1);
525 match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_identifier178);
526 IDENTIFIER32_tree = (Object)adaptor.create(IDENTIFIER32);
527 adaptor.addChild(root_0, IDENTIFIER32_tree);
533 catch (RecognitionException re) {
538 retval.stop = input.LT(-1);
540 retval.tree = (Object)adaptor.rulePostProcessing(root_0);
541 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
546 // $ANTLR end identifier
548 public static class id_return extends ParserRuleReturnScope {
550 public Object getTree() { return tree; }
554 // bst.g:31:1: id : '{'! identifier '}'! ;
555 public id_return id() throws RecognitionException {
556 id_return retval = new id_return();
557 retval.start = input.LT(1);
559 Object root_0 = null;
561 Token char_literal33=null;
562 Token char_literal35=null;
563 identifier_return identifier34 = null;
566 Object char_literal33_tree=null;
567 Object char_literal35_tree=null;
570 // bst.g:32:4: ( '{'! identifier '}'! )
571 // bst.g:32:4: '{'! identifier '}'!
573 root_0 = (Object)adaptor.nil();
575 char_literal33=(Token)input.LT(1);
576 match(input,25,FOLLOW_25_in_id188);
577 pushFollow(FOLLOW_identifier_in_id191);
578 identifier34=identifier();
581 adaptor.addChild(root_0, identifier34.tree);
582 char_literal35=(Token)input.LT(1);
583 match(input,26,FOLLOW_26_in_id193);
588 catch (RecognitionException re) {
593 retval.stop = input.LT(-1);
595 retval.tree = (Object)adaptor.rulePostProcessing(root_0);
596 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
603 public static class idList_return extends ParserRuleReturnScope {
605 public Object getTree() { return tree; }
608 // $ANTLR start idList
609 // bst.g:34:1: idList : '{' ( identifier )+ '}' -> ^( IDLIST ( identifier )+ ) ;
610 public idList_return idList() throws RecognitionException {
611 idList_return retval = new idList_return();
612 retval.start = input.LT(1);
614 Object root_0 = null;
616 Token char_literal36=null;
617 Token char_literal38=null;
618 identifier_return identifier37 = null;
620 List list_identifier=new ArrayList();
621 List list_26=new ArrayList();
622 List list_25=new ArrayList();
623 Object char_literal36_tree=null;
624 Object char_literal38_tree=null;
627 // bst.g:35:4: ( '{' ( identifier )+ '}' -> ^( IDLIST ( identifier )+ ) )
628 // bst.g:35:4: '{' ( identifier )+ '}'
630 char_literal36=(Token)input.LT(1);
631 match(input,25,FOLLOW_25_in_idList205);
632 list_25.add(char_literal36);
634 // bst.g:35:8: ( identifier )+
639 int LA3_0 = input.LA(1);
640 if ( (LA3_0==IDENTIFIER) ) {
647 // bst.g:35:8: identifier
649 pushFollow(FOLLOW_identifier_in_idList207);
650 identifier37=identifier();
653 list_identifier.add(identifier37.tree);
659 if ( cnt3 >= 1 ) break loop3;
660 EarlyExitException eee =
661 new EarlyExitException(3, input);
667 char_literal38=(Token)input.LT(1);
668 match(input,26,FOLLOW_26_in_idList210);
669 list_26.add(char_literal38);
674 retval.tree = root_0;
675 root_0 = (Object)adaptor.nil();
676 // 35:24: -> ^( IDLIST ( identifier )+ )
678 // bst.g:35:27: ^( IDLIST ( identifier )+ )
680 Object root_1 = (Object)adaptor.nil();
681 root_1 = (Object)adaptor.becomeRoot(adaptor.create(IDLIST, "IDLIST"), root_1);
683 // bst.g:35:36: ( identifier )+
685 int n_1 = list_identifier == null ? 0 : list_identifier.size();
689 if ( n_1==0 ) throw new RuntimeException("Must have more than one element for (...)+ loops");
690 for (int i_1=0; i_1<n_1; i_1++) {
691 adaptor.addChild(root_1, list_identifier.get(i_1));
696 adaptor.addChild(root_0, root_1);
706 catch (RecognitionException re) {
711 retval.stop = input.LT(-1);
713 retval.tree = (Object)adaptor.rulePostProcessing(root_0);
714 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
721 public static class idList0_return extends ParserRuleReturnScope {
723 public Object getTree() { return tree; }
726 // $ANTLR start idList0
727 // bst.g:37:1: idList0 : '{' ( identifier )* '}' -> ^( IDLIST ( identifier )* ) ;
728 public idList0_return idList0() throws RecognitionException {
729 idList0_return retval = new idList0_return();
730 retval.start = input.LT(1);
732 Object root_0 = null;
734 Token char_literal39=null;
735 Token char_literal41=null;
736 identifier_return identifier40 = null;
738 List list_identifier=new ArrayList();
739 List list_26=new ArrayList();
740 List list_25=new ArrayList();
741 Object char_literal39_tree=null;
742 Object char_literal41_tree=null;
745 // bst.g:38:4: ( '{' ( identifier )* '}' -> ^( IDLIST ( identifier )* ) )
746 // bst.g:38:4: '{' ( identifier )* '}'
748 char_literal39=(Token)input.LT(1);
749 match(input,25,FOLLOW_25_in_idList0230);
750 list_25.add(char_literal39);
752 // bst.g:38:8: ( identifier )*
756 int LA4_0 = input.LA(1);
757 if ( (LA4_0==IDENTIFIER) ) {
764 // bst.g:38:8: identifier
766 pushFollow(FOLLOW_identifier_in_idList0232);
767 identifier40=identifier();
770 list_identifier.add(identifier40.tree);
780 char_literal41=(Token)input.LT(1);
781 match(input,26,FOLLOW_26_in_idList0235);
782 list_26.add(char_literal41);
787 retval.tree = root_0;
788 root_0 = (Object)adaptor.nil();
789 // 38:24: -> ^( IDLIST ( identifier )* )
791 // bst.g:38:27: ^( IDLIST ( identifier )* )
793 Object root_1 = (Object)adaptor.nil();
794 root_1 = (Object)adaptor.becomeRoot(adaptor.create(IDLIST, "IDLIST"), root_1);
796 // bst.g:38:36: ( identifier )*
798 int n_1 = list_identifier == null ? 0 : list_identifier.size();
802 for (int i_1=0; i_1<n_1; i_1++) {
803 adaptor.addChild(root_1, list_identifier.get(i_1));
808 adaptor.addChild(root_0, root_1);
818 catch (RecognitionException re) {
823 retval.stop = input.LT(-1);
825 retval.tree = (Object)adaptor.rulePostProcessing(root_0);
826 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
831 // $ANTLR end idList0
833 public static class function_return extends ParserRuleReturnScope {
835 public Object getTree() { return tree; }
838 // $ANTLR start function
839 // bst.g:40:1: function : ( '<' | '>' | '=' | '+' | '-' | ':=' | '*' | 'add.period$' | 'call.type$' | 'change.case$' | 'chr.to.int$' | 'cite$' | 'duplicat$' | 'empty$' | 'format.name$' | 'if$' | 'int.to.chr$' | 'int.to.str$' | 'missing$' | 'newline$' | 'num.names$' | 'pop$' | 'preamble$' | 'purify$' | 'quote$' | 'skip$' | 'stack$' | 'substring$' | 'swap$' | 'text.length$' | 'text.prefix$' | 'top$' | 'type$' | 'warning$' | 'while$' | 'width$' | 'write$' | identifier );
840 public function_return function() throws RecognitionException {
841 function_return retval = new function_return();
842 retval.start = input.LT(1);
844 Object root_0 = null;
846 Token char_literal42=null;
847 Token char_literal43=null;
848 Token char_literal44=null;
849 Token char_literal45=null;
850 Token char_literal46=null;
851 Token string_literal47=null;
852 Token char_literal48=null;
853 Token string_literal49=null;
854 Token string_literal50=null;
855 Token string_literal51=null;
856 Token string_literal52=null;
857 Token string_literal53=null;
858 Token string_literal54=null;
859 Token string_literal55=null;
860 Token string_literal56=null;
861 Token string_literal57=null;
862 Token string_literal58=null;
863 Token string_literal59=null;
864 Token string_literal60=null;
865 Token string_literal61=null;
866 Token string_literal62=null;
867 Token string_literal63=null;
868 Token string_literal64=null;
869 Token string_literal65=null;
870 Token string_literal66=null;
871 Token string_literal67=null;
872 Token string_literal68=null;
873 Token string_literal69=null;
874 Token string_literal70=null;
875 Token string_literal71=null;
876 Token string_literal72=null;
877 Token string_literal73=null;
878 Token string_literal74=null;
879 Token string_literal75=null;
880 Token string_literal76=null;
881 Token string_literal77=null;
882 Token string_literal78=null;
883 identifier_return identifier79 = null;
886 Object char_literal42_tree=null;
887 Object char_literal43_tree=null;
888 Object char_literal44_tree=null;
889 Object char_literal45_tree=null;
890 Object char_literal46_tree=null;
891 Object string_literal47_tree=null;
892 Object char_literal48_tree=null;
893 Object string_literal49_tree=null;
894 Object string_literal50_tree=null;
895 Object string_literal51_tree=null;
896 Object string_literal52_tree=null;
897 Object string_literal53_tree=null;
898 Object string_literal54_tree=null;
899 Object string_literal55_tree=null;
900 Object string_literal56_tree=null;
901 Object string_literal57_tree=null;
902 Object string_literal58_tree=null;
903 Object string_literal59_tree=null;
904 Object string_literal60_tree=null;
905 Object string_literal61_tree=null;
906 Object string_literal62_tree=null;
907 Object string_literal63_tree=null;
908 Object string_literal64_tree=null;
909 Object string_literal65_tree=null;
910 Object string_literal66_tree=null;
911 Object string_literal67_tree=null;
912 Object string_literal68_tree=null;
913 Object string_literal69_tree=null;
914 Object string_literal70_tree=null;
915 Object string_literal71_tree=null;
916 Object string_literal72_tree=null;
917 Object string_literal73_tree=null;
918 Object string_literal74_tree=null;
919 Object string_literal75_tree=null;
920 Object string_literal76_tree=null;
921 Object string_literal77_tree=null;
922 Object string_literal78_tree=null;
925 // bst.g:41:4: ( '<' | '>' | '=' | '+' | '-' | ':=' | '*' | 'add.period$' | 'call.type$' | 'change.case$' | 'chr.to.int$' | 'cite$' | 'duplicat$' | 'empty$' | 'format.name$' | 'if$' | 'int.to.chr$' | 'int.to.str$' | 'missing$' | 'newline$' | 'num.names$' | 'pop$' | 'preamble$' | 'purify$' | 'quote$' | 'skip$' | 'stack$' | 'substring$' | 'swap$' | 'text.length$' | 'text.prefix$' | 'top$' | 'type$' | 'warning$' | 'while$' | 'width$' | 'write$' | identifier )
927 switch ( input.LA(1) ) {
1043 NoViableAltException nvae =
1044 new NoViableAltException("40:1: function : ( '<' | '>' | '=' | '+' | '-' | ':=' | '*' | 'add.period$' | 'call.type$' | 'change.case$' | 'chr.to.int$' | 'cite$' | 'duplicat$' | 'empty$' | 'format.name$' | 'if$' | 'int.to.chr$' | 'int.to.str$' | 'missing$' | 'newline$' | 'num.names$' | 'pop$' | 'preamble$' | 'purify$' | 'quote$' | 'skip$' | 'stack$' | 'substring$' | 'swap$' | 'text.length$' | 'text.prefix$' | 'top$' | 'type$' | 'warning$' | 'while$' | 'width$' | 'write$' | identifier );", 5, 0, input);
1053 root_0 = (Object)adaptor.nil();
1055 char_literal42=(Token)input.LT(1);
1056 match(input,27,FOLLOW_27_in_function254);
1057 char_literal42_tree = (Object)adaptor.create(char_literal42);
1058 adaptor.addChild(root_0, char_literal42_tree);
1066 root_0 = (Object)adaptor.nil();
1068 char_literal43=(Token)input.LT(1);
1069 match(input,28,FOLLOW_28_in_function258);
1070 char_literal43_tree = (Object)adaptor.create(char_literal43);
1071 adaptor.addChild(root_0, char_literal43_tree);
1079 root_0 = (Object)adaptor.nil();
1081 char_literal44=(Token)input.LT(1);
1082 match(input,29,FOLLOW_29_in_function262);
1083 char_literal44_tree = (Object)adaptor.create(char_literal44);
1084 adaptor.addChild(root_0, char_literal44_tree);
1092 root_0 = (Object)adaptor.nil();
1094 char_literal45=(Token)input.LT(1);
1095 match(input,30,FOLLOW_30_in_function266);
1096 char_literal45_tree = (Object)adaptor.create(char_literal45);
1097 adaptor.addChild(root_0, char_literal45_tree);
1105 root_0 = (Object)adaptor.nil();
1107 char_literal46=(Token)input.LT(1);
1108 match(input,31,FOLLOW_31_in_function270);
1109 char_literal46_tree = (Object)adaptor.create(char_literal46);
1110 adaptor.addChild(root_0, char_literal46_tree);
1116 // bst.g:41:34: ':='
1118 root_0 = (Object)adaptor.nil();
1120 string_literal47=(Token)input.LT(1);
1121 match(input,32,FOLLOW_32_in_function274);
1122 string_literal47_tree = (Object)adaptor.create(string_literal47);
1123 adaptor.addChild(root_0, string_literal47_tree);
1131 root_0 = (Object)adaptor.nil();
1133 char_literal48=(Token)input.LT(1);
1134 match(input,33,FOLLOW_33_in_function278);
1135 char_literal48_tree = (Object)adaptor.create(char_literal48);
1136 adaptor.addChild(root_0, char_literal48_tree);
1142 // bst.g:41:47: 'add.period$'
1144 root_0 = (Object)adaptor.nil();
1146 string_literal49=(Token)input.LT(1);
1147 match(input,34,FOLLOW_34_in_function282);
1148 string_literal49_tree = (Object)adaptor.create(string_literal49);
1149 adaptor.addChild(root_0, string_literal49_tree);
1155 // bst.g:41:63: 'call.type$'
1157 root_0 = (Object)adaptor.nil();
1159 string_literal50=(Token)input.LT(1);
1160 match(input,35,FOLLOW_35_in_function286);
1161 string_literal50_tree = (Object)adaptor.create(string_literal50);
1162 adaptor.addChild(root_0, string_literal50_tree);
1168 // bst.g:41:78: 'change.case$'
1170 root_0 = (Object)adaptor.nil();
1172 string_literal51=(Token)input.LT(1);
1173 match(input,36,FOLLOW_36_in_function290);
1174 string_literal51_tree = (Object)adaptor.create(string_literal51);
1175 adaptor.addChild(root_0, string_literal51_tree);
1181 // bst.g:41:95: 'chr.to.int$'
1183 root_0 = (Object)adaptor.nil();
1185 string_literal52=(Token)input.LT(1);
1186 match(input,37,FOLLOW_37_in_function294);
1187 string_literal52_tree = (Object)adaptor.create(string_literal52);
1188 adaptor.addChild(root_0, string_literal52_tree);
1194 // bst.g:42:4: 'cite$'
1196 root_0 = (Object)adaptor.nil();
1198 string_literal53=(Token)input.LT(1);
1199 match(input,38,FOLLOW_38_in_function299);
1200 string_literal53_tree = (Object)adaptor.create(string_literal53);
1201 adaptor.addChild(root_0, string_literal53_tree);
1207 // bst.g:42:14: 'duplicat$'
1209 root_0 = (Object)adaptor.nil();
1211 string_literal54=(Token)input.LT(1);
1212 match(input,39,FOLLOW_39_in_function303);
1213 string_literal54_tree = (Object)adaptor.create(string_literal54);
1214 adaptor.addChild(root_0, string_literal54_tree);
1220 // bst.g:42:28: 'empty$'
1222 root_0 = (Object)adaptor.nil();
1224 string_literal55=(Token)input.LT(1);
1225 match(input,40,FOLLOW_40_in_function307);
1226 string_literal55_tree = (Object)adaptor.create(string_literal55);
1227 adaptor.addChild(root_0, string_literal55_tree);
1233 // bst.g:42:39: 'format.name$'
1235 root_0 = (Object)adaptor.nil();
1237 string_literal56=(Token)input.LT(1);
1238 match(input,41,FOLLOW_41_in_function311);
1239 string_literal56_tree = (Object)adaptor.create(string_literal56);
1240 adaptor.addChild(root_0, string_literal56_tree);
1246 // bst.g:42:56: 'if$'
1248 root_0 = (Object)adaptor.nil();
1250 string_literal57=(Token)input.LT(1);
1251 match(input,42,FOLLOW_42_in_function315);
1252 string_literal57_tree = (Object)adaptor.create(string_literal57);
1253 adaptor.addChild(root_0, string_literal57_tree);
1259 // bst.g:42:64: 'int.to.chr$'
1261 root_0 = (Object)adaptor.nil();
1263 string_literal58=(Token)input.LT(1);
1264 match(input,43,FOLLOW_43_in_function319);
1265 string_literal58_tree = (Object)adaptor.create(string_literal58);
1266 adaptor.addChild(root_0, string_literal58_tree);
1272 // bst.g:42:80: 'int.to.str$'
1274 root_0 = (Object)adaptor.nil();
1276 string_literal59=(Token)input.LT(1);
1277 match(input,44,FOLLOW_44_in_function323);
1278 string_literal59_tree = (Object)adaptor.create(string_literal59);
1279 adaptor.addChild(root_0, string_literal59_tree);
1285 // bst.g:42:96: 'missing$'
1287 root_0 = (Object)adaptor.nil();
1289 string_literal60=(Token)input.LT(1);
1290 match(input,45,FOLLOW_45_in_function327);
1291 string_literal60_tree = (Object)adaptor.create(string_literal60);
1292 adaptor.addChild(root_0, string_literal60_tree);
1298 // bst.g:43:4: 'newline$'
1300 root_0 = (Object)adaptor.nil();
1302 string_literal61=(Token)input.LT(1);
1303 match(input,46,FOLLOW_46_in_function332);
1304 string_literal61_tree = (Object)adaptor.create(string_literal61);
1305 adaptor.addChild(root_0, string_literal61_tree);
1311 // bst.g:43:17: 'num.names$'
1313 root_0 = (Object)adaptor.nil();
1315 string_literal62=(Token)input.LT(1);
1316 match(input,47,FOLLOW_47_in_function336);
1317 string_literal62_tree = (Object)adaptor.create(string_literal62);
1318 adaptor.addChild(root_0, string_literal62_tree);
1324 // bst.g:43:32: 'pop$'
1326 root_0 = (Object)adaptor.nil();
1328 string_literal63=(Token)input.LT(1);
1329 match(input,48,FOLLOW_48_in_function340);
1330 string_literal63_tree = (Object)adaptor.create(string_literal63);
1331 adaptor.addChild(root_0, string_literal63_tree);
1337 // bst.g:43:41: 'preamble$'
1339 root_0 = (Object)adaptor.nil();
1341 string_literal64=(Token)input.LT(1);
1342 match(input,49,FOLLOW_49_in_function344);
1343 string_literal64_tree = (Object)adaptor.create(string_literal64);
1344 adaptor.addChild(root_0, string_literal64_tree);
1350 // bst.g:43:55: 'purify$'
1352 root_0 = (Object)adaptor.nil();
1354 string_literal65=(Token)input.LT(1);
1355 match(input,50,FOLLOW_50_in_function348);
1356 string_literal65_tree = (Object)adaptor.create(string_literal65);
1357 adaptor.addChild(root_0, string_literal65_tree);
1363 // bst.g:43:67: 'quote$'
1365 root_0 = (Object)adaptor.nil();
1367 string_literal66=(Token)input.LT(1);
1368 match(input,51,FOLLOW_51_in_function352);
1369 string_literal66_tree = (Object)adaptor.create(string_literal66);
1370 adaptor.addChild(root_0, string_literal66_tree);
1376 // bst.g:43:78: 'skip$'
1378 root_0 = (Object)adaptor.nil();
1380 string_literal67=(Token)input.LT(1);
1381 match(input,52,FOLLOW_52_in_function356);
1382 string_literal67_tree = (Object)adaptor.create(string_literal67);
1383 adaptor.addChild(root_0, string_literal67_tree);
1389 // bst.g:43:88: 'stack$'
1391 root_0 = (Object)adaptor.nil();
1393 string_literal68=(Token)input.LT(1);
1394 match(input,53,FOLLOW_53_in_function360);
1395 string_literal68_tree = (Object)adaptor.create(string_literal68);
1396 adaptor.addChild(root_0, string_literal68_tree);
1402 // bst.g:43:99: 'substring$'
1404 root_0 = (Object)adaptor.nil();
1406 string_literal69=(Token)input.LT(1);
1407 match(input,54,FOLLOW_54_in_function364);
1408 string_literal69_tree = (Object)adaptor.create(string_literal69);
1409 adaptor.addChild(root_0, string_literal69_tree);
1415 // bst.g:44:4: 'swap$'
1417 root_0 = (Object)adaptor.nil();
1419 string_literal70=(Token)input.LT(1);
1420 match(input,55,FOLLOW_55_in_function369);
1421 string_literal70_tree = (Object)adaptor.create(string_literal70);
1422 adaptor.addChild(root_0, string_literal70_tree);
1428 // bst.g:44:14: 'text.length$'
1430 root_0 = (Object)adaptor.nil();
1432 string_literal71=(Token)input.LT(1);
1433 match(input,56,FOLLOW_56_in_function373);
1434 string_literal71_tree = (Object)adaptor.create(string_literal71);
1435 adaptor.addChild(root_0, string_literal71_tree);
1441 // bst.g:44:31: 'text.prefix$'
1443 root_0 = (Object)adaptor.nil();
1445 string_literal72=(Token)input.LT(1);
1446 match(input,57,FOLLOW_57_in_function377);
1447 string_literal72_tree = (Object)adaptor.create(string_literal72);
1448 adaptor.addChild(root_0, string_literal72_tree);
1454 // bst.g:44:48: 'top$'
1456 root_0 = (Object)adaptor.nil();
1458 string_literal73=(Token)input.LT(1);
1459 match(input,58,FOLLOW_58_in_function381);
1460 string_literal73_tree = (Object)adaptor.create(string_literal73);
1461 adaptor.addChild(root_0, string_literal73_tree);
1467 // bst.g:44:57: 'type$'
1469 root_0 = (Object)adaptor.nil();
1471 string_literal74=(Token)input.LT(1);
1472 match(input,59,FOLLOW_59_in_function385);
1473 string_literal74_tree = (Object)adaptor.create(string_literal74);
1474 adaptor.addChild(root_0, string_literal74_tree);
1480 // bst.g:44:67: 'warning$'
1482 root_0 = (Object)adaptor.nil();
1484 string_literal75=(Token)input.LT(1);
1485 match(input,60,FOLLOW_60_in_function389);
1486 string_literal75_tree = (Object)adaptor.create(string_literal75);
1487 adaptor.addChild(root_0, string_literal75_tree);
1493 // bst.g:44:80: 'while$'
1495 root_0 = (Object)adaptor.nil();
1497 string_literal76=(Token)input.LT(1);
1498 match(input,61,FOLLOW_61_in_function393);
1499 string_literal76_tree = (Object)adaptor.create(string_literal76);
1500 adaptor.addChild(root_0, string_literal76_tree);
1506 // bst.g:44:91: 'width$'
1508 root_0 = (Object)adaptor.nil();
1510 string_literal77=(Token)input.LT(1);
1511 match(input,62,FOLLOW_62_in_function397);
1512 string_literal77_tree = (Object)adaptor.create(string_literal77);
1513 adaptor.addChild(root_0, string_literal77_tree);
1519 // bst.g:45:4: 'write$'
1521 root_0 = (Object)adaptor.nil();
1523 string_literal78=(Token)input.LT(1);
1524 match(input,63,FOLLOW_63_in_function402);
1525 string_literal78_tree = (Object)adaptor.create(string_literal78);
1526 adaptor.addChild(root_0, string_literal78_tree);
1532 // bst.g:45:15: identifier
1534 root_0 = (Object)adaptor.nil();
1536 pushFollow(FOLLOW_identifier_in_function406);
1537 identifier79=identifier();
1540 adaptor.addChild(root_0, identifier79.tree);
1547 catch (RecognitionException re) {
1552 retval.stop = input.LT(-1);
1554 retval.tree = (Object)adaptor.rulePostProcessing(root_0);
1555 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
1560 // $ANTLR end function
1562 public static class stack_return extends ParserRuleReturnScope {
1564 public Object getTree() { return tree; }
1567 // $ANTLR start stack
1568 // bst.g:47:1: stack : '{' ( stackitem )+ '}' -> ^( STACK ( stackitem )+ ) ;
1569 public stack_return stack() throws RecognitionException {
1570 stack_return retval = new stack_return();
1571 retval.start = input.LT(1);
1573 Object root_0 = null;
1575 Token char_literal80=null;
1576 Token char_literal82=null;
1577 stackitem_return stackitem81 = null;
1579 List list_stackitem=new ArrayList();
1580 List list_26=new ArrayList();
1581 List list_25=new ArrayList();
1582 Object char_literal80_tree=null;
1583 Object char_literal82_tree=null;
1586 // bst.g:48:4: ( '{' ( stackitem )+ '}' -> ^( STACK ( stackitem )+ ) )
1587 // bst.g:48:4: '{' ( stackitem )+ '}'
1589 char_literal80=(Token)input.LT(1);
1590 match(input,25,FOLLOW_25_in_stack417);
1591 list_25.add(char_literal80);
1593 // bst.g:48:8: ( stackitem )+
1598 int LA6_0 = input.LA(1);
1599 if ( (LA6_0==STRING||(LA6_0>=IDENTIFIER && LA6_0<=QUOTED)||LA6_0==25||(LA6_0>=27 && LA6_0<=63)) ) {
1606 // bst.g:48:8: stackitem
1608 pushFollow(FOLLOW_stackitem_in_stack419);
1609 stackitem81=stackitem();
1612 list_stackitem.add(stackitem81.tree);
1618 if ( cnt6 >= 1 ) break loop6;
1619 EarlyExitException eee =
1620 new EarlyExitException(6, input);
1626 char_literal82=(Token)input.LT(1);
1627 match(input,26,FOLLOW_26_in_stack422);
1628 list_26.add(char_literal82);
1633 retval.tree = root_0;
1634 root_0 = (Object)adaptor.nil();
1635 // 48:23: -> ^( STACK ( stackitem )+ )
1637 // bst.g:48:26: ^( STACK ( stackitem )+ )
1639 Object root_1 = (Object)adaptor.nil();
1640 root_1 = (Object)adaptor.becomeRoot(adaptor.create(STACK, "STACK"), root_1);
1642 // bst.g:48:34: ( stackitem )+
1644 int n_1 = list_stackitem == null ? 0 : list_stackitem.size();
1648 if ( n_1==0 ) throw new RuntimeException("Must have more than one element for (...)+ loops");
1649 for (int i_1=0; i_1<n_1; i_1++) {
1650 adaptor.addChild(root_1, list_stackitem.get(i_1));
1655 adaptor.addChild(root_0, root_1);
1665 catch (RecognitionException re) {
1670 retval.stop = input.LT(-1);
1672 retval.tree = (Object)adaptor.rulePostProcessing(root_0);
1673 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
1680 public static class stackitem_return extends ParserRuleReturnScope {
1682 public Object getTree() { return tree; }
1685 // $ANTLR start stackitem
1686 // bst.g:50:1: stackitem : ( function | STRING | INTEGER | QUOTED | stack );
1687 public stackitem_return stackitem() throws RecognitionException {
1688 stackitem_return retval = new stackitem_return();
1689 retval.start = input.LT(1);
1691 Object root_0 = null;
1693 Token STRING84=null;
1694 Token INTEGER85=null;
1695 Token QUOTED86=null;
1696 function_return function83 = null;
1698 stack_return stack87 = null;
1701 Object STRING84_tree=null;
1702 Object INTEGER85_tree=null;
1703 Object QUOTED86_tree=null;
1706 // bst.g:51:4: ( function | STRING | INTEGER | QUOTED | stack )
1708 switch ( input.LA(1) ) {
1762 NoViableAltException nvae =
1763 new NoViableAltException("50:1: stackitem : ( function | STRING | INTEGER | QUOTED | stack );", 7, 0, input);
1770 // bst.g:51:4: function
1772 root_0 = (Object)adaptor.nil();
1774 pushFollow(FOLLOW_function_in_stackitem441);
1775 function83=function();
1778 adaptor.addChild(root_0, function83.tree);
1783 // bst.g:52:4: STRING
1785 root_0 = (Object)adaptor.nil();
1787 STRING84=(Token)input.LT(1);
1788 match(input,STRING,FOLLOW_STRING_in_stackitem446);
1789 STRING84_tree = (Object)adaptor.create(STRING84);
1790 adaptor.addChild(root_0, STRING84_tree);
1796 // bst.g:53:4: INTEGER
1798 root_0 = (Object)adaptor.nil();
1800 INTEGER85=(Token)input.LT(1);
1801 match(input,INTEGER,FOLLOW_INTEGER_in_stackitem452);
1802 INTEGER85_tree = (Object)adaptor.create(INTEGER85);
1803 adaptor.addChild(root_0, INTEGER85_tree);
1809 // bst.g:54:4: QUOTED
1811 root_0 = (Object)adaptor.nil();
1813 QUOTED86=(Token)input.LT(1);
1814 match(input,QUOTED,FOLLOW_QUOTED_in_stackitem458);
1815 QUOTED86_tree = (Object)adaptor.create(QUOTED86);
1816 adaptor.addChild(root_0, QUOTED86_tree);
1822 // bst.g:55:4: stack
1824 root_0 = (Object)adaptor.nil();
1826 pushFollow(FOLLOW_stack_in_stackitem463);
1830 adaptor.addChild(root_0, stack87.tree);
1837 catch (RecognitionException re) {
1842 retval.stop = input.LT(-1);
1844 retval.tree = (Object)adaptor.rulePostProcessing(root_0);
1845 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
1850 // $ANTLR end stackitem
1855 public static final BitSet FOLLOW_commands_in_program45 = new BitSet(new long[]{0x000000000003EF42L});
1856 public static final BitSet FOLLOW_STRINGS_in_commands65 = new BitSet(new long[]{0x0000000002000000L});
1857 public static final BitSet FOLLOW_idList_in_commands68 = new BitSet(new long[]{0x0000000000000002L});
1858 public static final BitSet FOLLOW_INTEGERS_in_commands73 = new BitSet(new long[]{0x0000000002000000L});
1859 public static final BitSet FOLLOW_idList_in_commands76 = new BitSet(new long[]{0x0000000000000002L});
1860 public static final BitSet FOLLOW_FUNCTION_in_commands81 = new BitSet(new long[]{0x0000000002000000L});
1861 public static final BitSet FOLLOW_id_in_commands84 = new BitSet(new long[]{0x0000000002000000L});
1862 public static final BitSet FOLLOW_stack_in_commands86 = new BitSet(new long[]{0x0000000000000002L});
1863 public static final BitSet FOLLOW_MACRO_in_commands91 = new BitSet(new long[]{0x0000000002000000L});
1864 public static final BitSet FOLLOW_id_in_commands94 = new BitSet(new long[]{0x0000000002000000L});
1865 public static final BitSet FOLLOW_25_in_commands96 = new BitSet(new long[]{0x0000000000001000L});
1866 public static final BitSet FOLLOW_STRING_in_commands99 = new BitSet(new long[]{0x0000000004000000L});
1867 public static final BitSet FOLLOW_26_in_commands101 = new BitSet(new long[]{0x0000000000000002L});
1868 public static final BitSet FOLLOW_READ_in_commands107 = new BitSet(new long[]{0x0000000000000002L});
1869 public static final BitSet FOLLOW_EXECUTE_in_commands113 = new BitSet(new long[]{0x0000000002000000L});
1870 public static final BitSet FOLLOW_25_in_commands116 = new BitSet(new long[]{0xFFFFFFFFF8040000L});
1871 public static final BitSet FOLLOW_function_in_commands119 = new BitSet(new long[]{0x0000000004000000L});
1872 public static final BitSet FOLLOW_26_in_commands121 = new BitSet(new long[]{0x0000000000000002L});
1873 public static final BitSet FOLLOW_ITERATE_in_commands127 = new BitSet(new long[]{0x0000000002000000L});
1874 public static final BitSet FOLLOW_25_in_commands130 = new BitSet(new long[]{0xFFFFFFFFF8040000L});
1875 public static final BitSet FOLLOW_function_in_commands133 = new BitSet(new long[]{0x0000000004000000L});
1876 public static final BitSet FOLLOW_26_in_commands135 = new BitSet(new long[]{0x0000000000000002L});
1877 public static final BitSet FOLLOW_REVERSE_in_commands141 = new BitSet(new long[]{0x0000000002000000L});
1878 public static final BitSet FOLLOW_25_in_commands144 = new BitSet(new long[]{0xFFFFFFFFF8040000L});
1879 public static final BitSet FOLLOW_function_in_commands147 = new BitSet(new long[]{0x0000000004000000L});
1880 public static final BitSet FOLLOW_26_in_commands149 = new BitSet(new long[]{0x0000000000000002L});
1881 public static final BitSet FOLLOW_ENTRY_in_commands155 = new BitSet(new long[]{0x0000000002000000L});
1882 public static final BitSet FOLLOW_idList0_in_commands158 = new BitSet(new long[]{0x0000000002000000L});
1883 public static final BitSet FOLLOW_idList0_in_commands160 = new BitSet(new long[]{0x0000000002000000L});
1884 public static final BitSet FOLLOW_idList0_in_commands162 = new BitSet(new long[]{0x0000000000000002L});
1885 public static final BitSet FOLLOW_SORT_in_commands167 = new BitSet(new long[]{0x0000000000000002L});
1886 public static final BitSet FOLLOW_IDENTIFIER_in_identifier178 = new BitSet(new long[]{0x0000000000000002L});
1887 public static final BitSet FOLLOW_25_in_id188 = new BitSet(new long[]{0x0000000000040000L});
1888 public static final BitSet FOLLOW_identifier_in_id191 = new BitSet(new long[]{0x0000000004000000L});
1889 public static final BitSet FOLLOW_26_in_id193 = new BitSet(new long[]{0x0000000000000002L});
1890 public static final BitSet FOLLOW_25_in_idList205 = new BitSet(new long[]{0x0000000000040000L});
1891 public static final BitSet FOLLOW_identifier_in_idList207 = new BitSet(new long[]{0x0000000004040000L});
1892 public static final BitSet FOLLOW_26_in_idList210 = new BitSet(new long[]{0x0000000000000002L});
1893 public static final BitSet FOLLOW_25_in_idList0230 = new BitSet(new long[]{0x0000000004040000L});
1894 public static final BitSet FOLLOW_identifier_in_idList0232 = new BitSet(new long[]{0x0000000004040000L});
1895 public static final BitSet FOLLOW_26_in_idList0235 = new BitSet(new long[]{0x0000000000000002L});
1896 public static final BitSet FOLLOW_27_in_function254 = new BitSet(new long[]{0x0000000000000002L});
1897 public static final BitSet FOLLOW_28_in_function258 = new BitSet(new long[]{0x0000000000000002L});
1898 public static final BitSet FOLLOW_29_in_function262 = new BitSet(new long[]{0x0000000000000002L});
1899 public static final BitSet FOLLOW_30_in_function266 = new BitSet(new long[]{0x0000000000000002L});
1900 public static final BitSet FOLLOW_31_in_function270 = new BitSet(new long[]{0x0000000000000002L});
1901 public static final BitSet FOLLOW_32_in_function274 = new BitSet(new long[]{0x0000000000000002L});
1902 public static final BitSet FOLLOW_33_in_function278 = new BitSet(new long[]{0x0000000000000002L});
1903 public static final BitSet FOLLOW_34_in_function282 = new BitSet(new long[]{0x0000000000000002L});
1904 public static final BitSet FOLLOW_35_in_function286 = new BitSet(new long[]{0x0000000000000002L});
1905 public static final BitSet FOLLOW_36_in_function290 = new BitSet(new long[]{0x0000000000000002L});
1906 public static final BitSet FOLLOW_37_in_function294 = new BitSet(new long[]{0x0000000000000002L});
1907 public static final BitSet FOLLOW_38_in_function299 = new BitSet(new long[]{0x0000000000000002L});
1908 public static final BitSet FOLLOW_39_in_function303 = new BitSet(new long[]{0x0000000000000002L});
1909 public static final BitSet FOLLOW_40_in_function307 = new BitSet(new long[]{0x0000000000000002L});
1910 public static final BitSet FOLLOW_41_in_function311 = new BitSet(new long[]{0x0000000000000002L});
1911 public static final BitSet FOLLOW_42_in_function315 = new BitSet(new long[]{0x0000000000000002L});
1912 public static final BitSet FOLLOW_43_in_function319 = new BitSet(new long[]{0x0000000000000002L});
1913 public static final BitSet FOLLOW_44_in_function323 = new BitSet(new long[]{0x0000000000000002L});
1914 public static final BitSet FOLLOW_45_in_function327 = new BitSet(new long[]{0x0000000000000002L});
1915 public static final BitSet FOLLOW_46_in_function332 = new BitSet(new long[]{0x0000000000000002L});
1916 public static final BitSet FOLLOW_47_in_function336 = new BitSet(new long[]{0x0000000000000002L});
1917 public static final BitSet FOLLOW_48_in_function340 = new BitSet(new long[]{0x0000000000000002L});
1918 public static final BitSet FOLLOW_49_in_function344 = new BitSet(new long[]{0x0000000000000002L});
1919 public static final BitSet FOLLOW_50_in_function348 = new BitSet(new long[]{0x0000000000000002L});
1920 public static final BitSet FOLLOW_51_in_function352 = new BitSet(new long[]{0x0000000000000002L});
1921 public static final BitSet FOLLOW_52_in_function356 = new BitSet(new long[]{0x0000000000000002L});
1922 public static final BitSet FOLLOW_53_in_function360 = new BitSet(new long[]{0x0000000000000002L});
1923 public static final BitSet FOLLOW_54_in_function364 = new BitSet(new long[]{0x0000000000000002L});
1924 public static final BitSet FOLLOW_55_in_function369 = new BitSet(new long[]{0x0000000000000002L});
1925 public static final BitSet FOLLOW_56_in_function373 = new BitSet(new long[]{0x0000000000000002L});
1926 public static final BitSet FOLLOW_57_in_function377 = new BitSet(new long[]{0x0000000000000002L});
1927 public static final BitSet FOLLOW_58_in_function381 = new BitSet(new long[]{0x0000000000000002L});
1928 public static final BitSet FOLLOW_59_in_function385 = new BitSet(new long[]{0x0000000000000002L});
1929 public static final BitSet FOLLOW_60_in_function389 = new BitSet(new long[]{0x0000000000000002L});
1930 public static final BitSet FOLLOW_61_in_function393 = new BitSet(new long[]{0x0000000000000002L});
1931 public static final BitSet FOLLOW_62_in_function397 = new BitSet(new long[]{0x0000000000000002L});
1932 public static final BitSet FOLLOW_63_in_function402 = new BitSet(new long[]{0x0000000000000002L});
1933 public static final BitSet FOLLOW_identifier_in_function406 = new BitSet(new long[]{0x0000000000000002L});
1934 public static final BitSet FOLLOW_25_in_stack417 = new BitSet(new long[]{0xFFFFFFFFFA1C1000L});
1935 public static final BitSet FOLLOW_stackitem_in_stack419 = new BitSet(new long[]{0xFFFFFFFFFE1C1000L});
1936 public static final BitSet FOLLOW_26_in_stack422 = new BitSet(new long[]{0x0000000000000002L});
1937 public static final BitSet FOLLOW_function_in_stackitem441 = new BitSet(new long[]{0x0000000000000002L});
1938 public static final BitSet FOLLOW_STRING_in_stackitem446 = new BitSet(new long[]{0x0000000000000002L});
1939 public static final BitSet FOLLOW_INTEGER_in_stackitem452 = new BitSet(new long[]{0x0000000000000002L});
1940 public static final BitSet FOLLOW_QUOTED_in_stackitem458 = new BitSet(new long[]{0x0000000000000002L});
1941 public static final BitSet FOLLOW_stack_in_stackitem463 = new BitSet(new long[]{0x0000000000000002L});