
reflex.ReflexTreeWalker Maven / Gradle / Ivy
The newest version!
// $ANTLR 3.5.2 /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g 2016-05-17 11:01:33
package reflex;
import java.math.*;
import java.io.PrintStream;
import reflex.function.*;
import reflex.node.*;
import reflex.node.io.*;
import reflex.node.functional.*;
import reflex.importer.*;
import reflex.debug.*;
import reflex.util.function.LanguageRegistry;
import reflex.util.*;
import reflex.value.ReflexValue;
import org.antlr.runtime.*;
import org.antlr.runtime.tree.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;
@SuppressWarnings("all")
public class ReflexTreeWalker extends TreeParser {
public static final String[] tokenNames = new String[] {
"", "", "", "", "ASSIGNMENT", "Add", "All", "And",
"Any", "Archive", "As", "Assert", "Assign", "AsyncCall", "AsyncCallScript",
"AsyncOneShot", "AsyncStatus", "B64Compress", "B64Decompress", "BLOCK",
"BREAK", "Bool", "Break", "CASE", "CBrace", "CBracket", "CONSTASSIGNMENT",
"CONTINUE", "CParen", "Call", "Capabilities", "Case", "Cast", "Catch",
"Chain", "Close", "Collate", "Colon", "Comma", "Comment", "Const", "Continue",
"Copy", "DEFAULT", "DOTTEDASSIGNMENT", "Date", "Debug", "Def", "Default",
"Defined", "Delete", "Difference", "Digit", "Divide", "Do", "DottedIdentifier",
"DoubleQuote", "DropWhile", "ESC", "EXP", "EXPORT", "EXP_LIST", "Else",
"End", "EndLine", "Equals", "Evals", "Excl", "Export", "FORLIST", "FORTO",
"FUNCTION", "FUNC_CALL", "File", "FilterFn", "Fold", "For", "Format",
"FromJson", "GT", "GTEquals", "GenSchema", "GenStruct", "GetCache", "GetCh",
"GetLine", "HasCapability", "ID_LIST", "IF", "IMPORT", "IMPORTAS", "IMPORTFROM",
"IMPORTPARAMS", "INCLUDE", "INDEXES", "IS", "Identifier", "If", "Import",
"In", "Int", "Integer", "Is", "IsFile", "IsFolder", "JARURI", "JARURI_LIST",
"Join", "Json", "KERNEL_CALL", "KEYVAL", "KEYVAL_LIST", "KernelIdentifier",
"Keys", "LIST", "LOOKUP", "LT", "LTEquals", "Lib", "Long", "MAPDEF", "MATCH",
"MD5", "METABLOCK", "METAPULL", "MINUSASSIGNMENT", "MapFn", "Match", "Matches",
"Merge", "MergeIf", "Message", "MkDir", "Modulus", "Multiply", "NEGATE",
"NEquals", "New", "Null", "Number", "OBrace", "OBracket", "OParen", "OTHERWISE",
"Or", "Otherwise", "PATCH", "PFORLIST", "PFORTO", "PFor", "PLUSASSIGNMENT",
"PORTF", "PORTR", "PULL", "PUSH", "PackageIdentifier", "Patch", "Port",
"PortA", "Pow", "Print", "Println", "PropertyPlaceholder", "PullVal",
"PushVal", "PutCache", "QMark", "QUALIFIED_FUNC_CALL", "QuotedString",
"RANGEINDEX", "RANGELOOKUP", "REQUIRE", "RETURN", "RPull", "RPush", "Rand",
"ReadDir", "Remove", "Replace", "Return", "Round", "SColon", "SPARSE",
"SPARSELOOKUP", "STATEMENTS", "SWITCH", "Signal", "SingleQuote", "Size",
"Sleep", "Sort", "Space", "Spawn", "Split", "SplitWith", "String", "Structure",
"Subtract", "Suspend", "SuspendWait", "Switch", "TERNARY", "TakeWhile",
"Template", "Throw", "Time", "Timer", "To", "Transpose", "Try", "TypeOf",
"UNARY_MIN", "Unique", "Unsupported", "UrlDecode", "UrlEncode", "Use",
"Uuid", "Vars", "Wait", "While", "'+='", "'-='", "'..'", "'<<--'", "'array'",
"'from'", "'integer'", "'list'", "'meta'", "'number'", "'of'", "'param'",
"'property'", "'string'", "'with'"
};
public static final int EOF=-1;
public static final int T__221=221;
public static final int T__222=222;
public static final int T__223=223;
public static final int T__224=224;
public static final int T__225=225;
public static final int T__226=226;
public static final int T__227=227;
public static final int T__228=228;
public static final int T__229=229;
public static final int T__230=230;
public static final int T__231=231;
public static final int T__232=232;
public static final int T__233=233;
public static final int T__234=234;
public static final int T__235=235;
public static final int ASSIGNMENT=4;
public static final int Add=5;
public static final int All=6;
public static final int And=7;
public static final int Any=8;
public static final int Archive=9;
public static final int As=10;
public static final int Assert=11;
public static final int Assign=12;
public static final int AsyncCall=13;
public static final int AsyncCallScript=14;
public static final int AsyncOneShot=15;
public static final int AsyncStatus=16;
public static final int B64Compress=17;
public static final int B64Decompress=18;
public static final int BLOCK=19;
public static final int BREAK=20;
public static final int Bool=21;
public static final int Break=22;
public static final int CASE=23;
public static final int CBrace=24;
public static final int CBracket=25;
public static final int CONSTASSIGNMENT=26;
public static final int CONTINUE=27;
public static final int CParen=28;
public static final int Call=29;
public static final int Capabilities=30;
public static final int Case=31;
public static final int Cast=32;
public static final int Catch=33;
public static final int Chain=34;
public static final int Close=35;
public static final int Collate=36;
public static final int Colon=37;
public static final int Comma=38;
public static final int Comment=39;
public static final int Const=40;
public static final int Continue=41;
public static final int Copy=42;
public static final int DEFAULT=43;
public static final int DOTTEDASSIGNMENT=44;
public static final int Date=45;
public static final int Debug=46;
public static final int Def=47;
public static final int Default=48;
public static final int Defined=49;
public static final int Delete=50;
public static final int Difference=51;
public static final int Digit=52;
public static final int Divide=53;
public static final int Do=54;
public static final int DottedIdentifier=55;
public static final int DoubleQuote=56;
public static final int DropWhile=57;
public static final int ESC=58;
public static final int EXP=59;
public static final int EXPORT=60;
public static final int EXP_LIST=61;
public static final int Else=62;
public static final int End=63;
public static final int EndLine=64;
public static final int Equals=65;
public static final int Evals=66;
public static final int Excl=67;
public static final int Export=68;
public static final int FORLIST=69;
public static final int FORTO=70;
public static final int FUNCTION=71;
public static final int FUNC_CALL=72;
public static final int File=73;
public static final int FilterFn=74;
public static final int Fold=75;
public static final int For=76;
public static final int Format=77;
public static final int FromJson=78;
public static final int GT=79;
public static final int GTEquals=80;
public static final int GenSchema=81;
public static final int GenStruct=82;
public static final int GetCache=83;
public static final int GetCh=84;
public static final int GetLine=85;
public static final int HasCapability=86;
public static final int ID_LIST=87;
public static final int IF=88;
public static final int IMPORT=89;
public static final int IMPORTAS=90;
public static final int IMPORTFROM=91;
public static final int IMPORTPARAMS=92;
public static final int INCLUDE=93;
public static final int INDEXES=94;
public static final int IS=95;
public static final int Identifier=96;
public static final int If=97;
public static final int Import=98;
public static final int In=99;
public static final int Int=100;
public static final int Integer=101;
public static final int Is=102;
public static final int IsFile=103;
public static final int IsFolder=104;
public static final int JARURI=105;
public static final int JARURI_LIST=106;
public static final int Join=107;
public static final int Json=108;
public static final int KERNEL_CALL=109;
public static final int KEYVAL=110;
public static final int KEYVAL_LIST=111;
public static final int KernelIdentifier=112;
public static final int Keys=113;
public static final int LIST=114;
public static final int LOOKUP=115;
public static final int LT=116;
public static final int LTEquals=117;
public static final int Lib=118;
public static final int Long=119;
public static final int MAPDEF=120;
public static final int MATCH=121;
public static final int MD5=122;
public static final int METABLOCK=123;
public static final int METAPULL=124;
public static final int MINUSASSIGNMENT=125;
public static final int MapFn=126;
public static final int Match=127;
public static final int Matches=128;
public static final int Merge=129;
public static final int MergeIf=130;
public static final int Message=131;
public static final int MkDir=132;
public static final int Modulus=133;
public static final int Multiply=134;
public static final int NEGATE=135;
public static final int NEquals=136;
public static final int New=137;
public static final int Null=138;
public static final int Number=139;
public static final int OBrace=140;
public static final int OBracket=141;
public static final int OParen=142;
public static final int OTHERWISE=143;
public static final int Or=144;
public static final int Otherwise=145;
public static final int PATCH=146;
public static final int PFORLIST=147;
public static final int PFORTO=148;
public static final int PFor=149;
public static final int PLUSASSIGNMENT=150;
public static final int PORTF=151;
public static final int PORTR=152;
public static final int PULL=153;
public static final int PUSH=154;
public static final int PackageIdentifier=155;
public static final int Patch=156;
public static final int Port=157;
public static final int PortA=158;
public static final int Pow=159;
public static final int Print=160;
public static final int Println=161;
public static final int PropertyPlaceholder=162;
public static final int PullVal=163;
public static final int PushVal=164;
public static final int PutCache=165;
public static final int QMark=166;
public static final int QUALIFIED_FUNC_CALL=167;
public static final int QuotedString=168;
public static final int RANGEINDEX=169;
public static final int RANGELOOKUP=170;
public static final int REQUIRE=171;
public static final int RETURN=172;
public static final int RPull=173;
public static final int RPush=174;
public static final int Rand=175;
public static final int ReadDir=176;
public static final int Remove=177;
public static final int Replace=178;
public static final int Return=179;
public static final int Round=180;
public static final int SColon=181;
public static final int SPARSE=182;
public static final int SPARSELOOKUP=183;
public static final int STATEMENTS=184;
public static final int SWITCH=185;
public static final int Signal=186;
public static final int SingleQuote=187;
public static final int Size=188;
public static final int Sleep=189;
public static final int Sort=190;
public static final int Space=191;
public static final int Spawn=192;
public static final int Split=193;
public static final int SplitWith=194;
public static final int String=195;
public static final int Structure=196;
public static final int Subtract=197;
public static final int Suspend=198;
public static final int SuspendWait=199;
public static final int Switch=200;
public static final int TERNARY=201;
public static final int TakeWhile=202;
public static final int Template=203;
public static final int Throw=204;
public static final int Time=205;
public static final int Timer=206;
public static final int To=207;
public static final int Transpose=208;
public static final int Try=209;
public static final int TypeOf=210;
public static final int UNARY_MIN=211;
public static final int Unique=212;
public static final int Unsupported=213;
public static final int UrlDecode=214;
public static final int UrlEncode=215;
public static final int Use=216;
public static final int Uuid=217;
public static final int Vars=218;
public static final int Wait=219;
public static final int While=220;
// delegates
public TreeParser[] getDelegates() {
return new TreeParser[] {};
}
// delegators
public ReflexTreeWalker(TreeNodeStream input) {
this(input, new RecognizerSharedState());
}
public ReflexTreeWalker(TreeNodeStream input, RecognizerSharedState state) {
super(input, state);
}
@Override public String[] getTokenNames() { return ReflexTreeWalker.tokenNames; }
@Override public String getGrammarFileName() { return "/Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g"; }
public LanguageRegistry languageRegistry = null;
public Scope currentScope = null;
private IReflexHandler handler = new DummyReflexHandler();
public ImportHandler importHandler = new ImportHandler();
private NamespaceStack namespaceStack;
public ReflexTreeWalker(CommonTreeNodeStream nodes, LanguageRegistry languageRegistry) {
this(nodes, null, languageRegistry);
}
public ReflexTreeWalker(CommonTreeNodeStream nds, Scope sc, LanguageRegistry languageRegistry) {
this(nds, sc, languageRegistry, languageRegistry.getNamespaceStack());
}
public ReflexTreeWalker(CommonTreeNodeStream nds, Scope sc, LanguageRegistry languageRegistry, NamespaceStack namespaceStack) {
super(nds);
if (sc == null) {
currentScope = Scope.getInitialScope();
} else {
currentScope = sc;
}
this.languageRegistry = languageRegistry;
importHandler.setReflexHandler(handler);
this.namespaceStack = namespaceStack;
}
public void setReflexHandler(IReflexHandler handler) {
this.handler = handler;
importHandler.setReflexHandler(handler);
}
public IReflexHandler getReflexHandler() {
return handler;
}
public void setImportHandler(ImportHandler importHandler) {
this.importHandler = importHandler;
}
public ImportHandler getImportHandler() {
return importHandler;
}
@Override
public void reportError(RecognitionException e) {
super.reportError(e);
}
// $ANTLR start "walk"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:75:1: walk returns [ReflexNode node] : ( metaBlock )? block ;
public final ReflexNode walk() throws RecognitionException {
ReflexNode node = null;
ReflexNode block1 =null;
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:76:3: ( ( metaBlock )? block )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:76:6: ( metaBlock )? block
{
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:76:6: ( metaBlock )?
int alt1=2;
int LA1_0 = input.LA(1);
if ( (LA1_0==METABLOCK) ) {
alt1=1;
}
switch (alt1) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:76:6: metaBlock
{
pushFollow(FOLLOW_metaBlock_in_walk50);
metaBlock();
state._fsp--;
}
break;
}
pushFollow(FOLLOW_block_in_walk53);
block1=block();
state._fsp--;
node = block1;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "walk"
// $ANTLR start "metaBlock"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:80:1: metaBlock : METABLOCK ;
public final void metaBlock() throws RecognitionException {
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:81:3: ( METABLOCK )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:81:5: METABLOCK
{
match(input,METABLOCK,FOLLOW_METABLOCK_in_metaBlock69);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
}
// $ANTLR end "metaBlock"
// $ANTLR start "block"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:84:1: block returns [ReflexNode node] : ^( BLOCK ^( STATEMENTS ( statement )* ) ^( RETURN ( expression )? ) ) ;
public final ReflexNode block() throws RecognitionException {
ReflexNode node = null;
ReflexNode statement2 =null;
ReflexNode expression3 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
Scope scope = new Scope(currentScope);
currentScope = scope;
BlockNode bn = new BlockNode(line, handler, currentScope);
node = bn;
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:96:3: ( ^( BLOCK ^( STATEMENTS ( statement )* ) ^( RETURN ( expression )? ) ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:96:6: ^( BLOCK ^( STATEMENTS ( statement )* ) ^( RETURN ( expression )? ) )
{
match(input,BLOCK,FOLLOW_BLOCK_in_block98);
match(input, Token.DOWN, null);
match(input,STATEMENTS,FOLLOW_STATEMENTS_in_block109);
if ( input.LA(1)==Token.DOWN ) {
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:97:22: ( statement )*
loop2:
while (true) {
int alt2=2;
int LA2_0 = input.LA(1);
if ( (LA2_0==ASSIGNMENT||LA2_0==BREAK||(LA2_0 >= CONSTASSIGNMENT && LA2_0 <= CONTINUE)||LA2_0==EXPORT||(LA2_0 >= FORLIST && LA2_0 <= FORTO)||LA2_0==FUNC_CALL||(LA2_0 >= IF && LA2_0 <= IMPORT)||LA2_0==KERNEL_CALL||LA2_0==MATCH||(LA2_0 >= METAPULL && LA2_0 <= MINUSASSIGNMENT)||(LA2_0 >= PATCH && LA2_0 <= PFORTO)||(LA2_0 >= PLUSASSIGNMENT && LA2_0 <= PUSH)||LA2_0==QUALIFIED_FUNC_CALL||LA2_0==SWITCH||LA2_0==Throw||LA2_0==Try||LA2_0==While) ) {
alt2=1;
}
switch (alt2) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:97:23: statement
{
pushFollow(FOLLOW_statement_in_block112);
statement2=statement();
state._fsp--;
bn.addStatement(statement2);
}
break;
default :
break loop2;
}
}
match(input, Token.UP, null);
}
match(input,RETURN,FOLLOW_RETURN_in_block129);
if ( input.LA(1)==Token.DOWN ) {
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:98:22: ( expression )?
int alt3=2;
int LA3_0 = input.LA(1);
if ( (LA3_0==Add||LA3_0==And||LA3_0==Bool||LA3_0==Divide||LA3_0==Equals||(LA3_0 >= GT && LA3_0 <= GTEquals)||LA3_0==In||LA3_0==Integer||(LA3_0 >= LOOKUP && LA3_0 <= LTEquals)||LA3_0==Long||(LA3_0 >= Modulus && LA3_0 <= NEquals)||(LA3_0 >= Null && LA3_0 <= Number)||LA3_0==Or||LA3_0==Pow||LA3_0==RANGELOOKUP||LA3_0==SPARSE||LA3_0==Subtract||LA3_0==TERNARY||LA3_0==UNARY_MIN) ) {
alt3=1;
}
switch (alt3) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:98:23: expression
{
pushFollow(FOLLOW_expression_in_block136);
expression3=expression();
state._fsp--;
bn.addReturn(expression3);
}
break;
}
match(input, Token.UP, null);
}
match(input, Token.UP, null);
}
currentScope = currentScope.parent();
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "block"
// $ANTLR start "exportStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:102:1: exportStatement returns [ReflexNode node] : ^( EXPORT i= Identifier b= block ) ;
public final ReflexNode exportStatement() throws RecognitionException {
ReflexNode node = null;
CommonTree i=null;
ReflexNode b =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:110:3: ( ^( EXPORT i= Identifier b= block ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:110:5: ^( EXPORT i= Identifier b= block )
{
match(input,EXPORT,FOLLOW_EXPORT_in_exportStatement177);
match(input, Token.DOWN, null);
i=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_exportStatement181);
namespaceStack.push((i!=null?i.getText():null));
pushFollow(FOLLOW_block_in_exportStatement187);
b=block();
state._fsp--;
match(input, Token.UP, null);
node = new ExportStatementNode(line, handler, currentScope, b );
}
namespaceStack.pop();
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "exportStatement"
// $ANTLR start "statement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:114:1: statement returns [ReflexNode node] : ( assignment | pull | metapull | push | patchStatement | port | importStatement | exportStatement | breakStatement | continueStatement | functionCall | throwStatement | matchStatement | switchStatement | ifStatement | forStatement | pforStatement | whileStatement | guardedStatement );
public final ReflexNode statement() throws RecognitionException {
ReflexNode node = null;
ReflexNode assignment4 =null;
ReflexNode pull5 =null;
ReflexNode metapull6 =null;
ReflexNode push7 =null;
ReflexNode patchStatement8 =null;
ReflexNode port9 =null;
ReflexNode importStatement10 =null;
ReflexNode exportStatement11 =null;
ReflexNode breakStatement12 =null;
ReflexNode continueStatement13 =null;
ReflexNode functionCall14 =null;
ReflexNode throwStatement15 =null;
ReflexNode matchStatement16 =null;
ReflexNode switchStatement17 =null;
ReflexNode ifStatement18 =null;
ReflexNode forStatement19 =null;
ReflexNode pforStatement20 =null;
ReflexNode whileStatement21 =null;
ReflexNode guardedStatement22 =null;
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:115:3: ( assignment | pull | metapull | push | patchStatement | port | importStatement | exportStatement | breakStatement | continueStatement | functionCall | throwStatement | matchStatement | switchStatement | ifStatement | forStatement | pforStatement | whileStatement | guardedStatement )
int alt4=19;
switch ( input.LA(1) ) {
case ASSIGNMENT:
case CONSTASSIGNMENT:
case MINUSASSIGNMENT:
case PLUSASSIGNMENT:
{
alt4=1;
}
break;
case PULL:
{
alt4=2;
}
break;
case METAPULL:
{
alt4=3;
}
break;
case PUSH:
{
alt4=4;
}
break;
case PATCH:
{
alt4=5;
}
break;
case PORTF:
case PORTR:
{
alt4=6;
}
break;
case IMPORT:
{
alt4=7;
}
break;
case EXPORT:
{
alt4=8;
}
break;
case BREAK:
{
alt4=9;
}
break;
case CONTINUE:
{
alt4=10;
}
break;
case FUNC_CALL:
case KERNEL_CALL:
case QUALIFIED_FUNC_CALL:
{
alt4=11;
}
break;
case Throw:
{
alt4=12;
}
break;
case MATCH:
{
alt4=13;
}
break;
case SWITCH:
{
alt4=14;
}
break;
case IF:
{
alt4=15;
}
break;
case FORLIST:
case FORTO:
{
alt4=16;
}
break;
case PFORLIST:
case PFORTO:
{
alt4=17;
}
break;
case While:
{
alt4=18;
}
break;
case Try:
{
alt4=19;
}
break;
default:
NoViableAltException nvae =
new NoViableAltException("", 4, 0, input);
throw nvae;
}
switch (alt4) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:115:6: assignment
{
pushFollow(FOLLOW_assignment_in_statement209);
assignment4=assignment();
state._fsp--;
node = assignment4;
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:116:6: pull
{
pushFollow(FOLLOW_pull_in_statement218);
pull5=pull();
state._fsp--;
node = pull5;
}
break;
case 3 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:117:6: metapull
{
pushFollow(FOLLOW_metapull_in_statement227);
metapull6=metapull();
state._fsp--;
node = metapull6;
}
break;
case 4 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:118:6: push
{
pushFollow(FOLLOW_push_in_statement236);
push7=push();
state._fsp--;
node = push7;
}
break;
case 5 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:119:6: patchStatement
{
pushFollow(FOLLOW_patchStatement_in_statement245);
patchStatement8=patchStatement();
state._fsp--;
node = patchStatement8;
}
break;
case 6 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:120:6: port
{
pushFollow(FOLLOW_port_in_statement254);
port9=port();
state._fsp--;
node = port9;
}
break;
case 7 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:121:6: importStatement
{
pushFollow(FOLLOW_importStatement_in_statement263);
importStatement10=importStatement();
state._fsp--;
node = importStatement10;
}
break;
case 8 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:122:6: exportStatement
{
pushFollow(FOLLOW_exportStatement_in_statement272);
exportStatement11=exportStatement();
state._fsp--;
node = exportStatement11;
}
break;
case 9 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:123:6: breakStatement
{
pushFollow(FOLLOW_breakStatement_in_statement281);
breakStatement12=breakStatement();
state._fsp--;
node = breakStatement12;
}
break;
case 10 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:124:6: continueStatement
{
pushFollow(FOLLOW_continueStatement_in_statement290);
continueStatement13=continueStatement();
state._fsp--;
node = continueStatement13;
}
break;
case 11 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:125:6: functionCall
{
pushFollow(FOLLOW_functionCall_in_statement299);
functionCall14=functionCall();
state._fsp--;
node = functionCall14;
}
break;
case 12 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:126:6: throwStatement
{
pushFollow(FOLLOW_throwStatement_in_statement308);
throwStatement15=throwStatement();
state._fsp--;
node = throwStatement15;
}
break;
case 13 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:127:6: matchStatement
{
pushFollow(FOLLOW_matchStatement_in_statement317);
matchStatement16=matchStatement();
state._fsp--;
node = matchStatement16;
}
break;
case 14 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:128:6: switchStatement
{
pushFollow(FOLLOW_switchStatement_in_statement326);
switchStatement17=switchStatement();
state._fsp--;
node = switchStatement17;
}
break;
case 15 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:129:6: ifStatement
{
pushFollow(FOLLOW_ifStatement_in_statement335);
ifStatement18=ifStatement();
state._fsp--;
node = ifStatement18;
}
break;
case 16 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:130:6: forStatement
{
pushFollow(FOLLOW_forStatement_in_statement344);
forStatement19=forStatement();
state._fsp--;
node = forStatement19;
}
break;
case 17 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:131:6: pforStatement
{
pushFollow(FOLLOW_pforStatement_in_statement353);
pforStatement20=pforStatement();
state._fsp--;
node = pforStatement20;
}
break;
case 18 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:132:6: whileStatement
{
pushFollow(FOLLOW_whileStatement_in_statement362);
whileStatement21=whileStatement();
state._fsp--;
node = whileStatement21;
}
break;
case 19 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:133:6: guardedStatement
{
pushFollow(FOLLOW_guardedStatement_in_statement371);
guardedStatement22=guardedStatement();
state._fsp--;
node = guardedStatement22;
}
break;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "statement"
// $ANTLR start "variant"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:136:1: variant returns [ReflexNode node] : ( Integer | Number | String | Long | Bool | Default );
public final ReflexNode variant() throws RecognitionException {
ReflexNode node = null;
CommonTree Integer23=null;
CommonTree Number24=null;
CommonTree String25=null;
CommonTree Long26=null;
CommonTree Bool27=null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:141:3: ( Integer | Number | String | Long | Bool | Default )
int alt5=6;
switch ( input.LA(1) ) {
case Integer:
{
alt5=1;
}
break;
case Number:
{
alt5=2;
}
break;
case String:
{
alt5=3;
}
break;
case Long:
{
alt5=4;
}
break;
case Bool:
{
alt5=5;
}
break;
case Default:
{
alt5=6;
}
break;
default:
NoViableAltException nvae =
new NoViableAltException("", 5, 0, input);
throw nvae;
}
switch (alt5) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:141:6: Integer
{
Integer23=(CommonTree)match(input,Integer,FOLLOW_Integer_in_variant398);
node = AtomNode.getIntegerAtom(line, handler, currentScope, (Integer23!=null?Integer23.getText():null));
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:142:6: Number
{
Number24=(CommonTree)match(input,Number,FOLLOW_Number_in_variant407);
node = new AtomNode(line, handler, currentScope, new BigDecimal((Number24!=null?Number24.getText():null), MathContext.DECIMAL128));
}
break;
case 3 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:143:6: String
{
String25=(CommonTree)match(input,String,FOLLOW_String_in_variant416);
node = AtomNode.getStringAtom(line, handler, currentScope, (String25!=null?String25.getText():null));
}
break;
case 4 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:144:6: Long
{
Long26=(CommonTree)match(input,Long,FOLLOW_Long_in_variant425);
node = new AtomNode(line, handler, currentScope, java.lang.Long.parseLong((Long26!=null?Long26.getText():null)));
}
break;
case 5 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:145:6: Bool
{
Bool27=(CommonTree)match(input,Bool,FOLLOW_Bool_in_variant434);
node = new AtomNode(line, handler, currentScope, Boolean.parseBoolean((Bool27!=null?Bool27.getText():null)));
}
break;
case 6 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:146:6: Default
{
match(input,Default,FOLLOW_Default_in_variant443);
node = null;
}
break;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "variant"
// $ANTLR start "switchStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:149:1: switchStatement returns [ReflexNode node] : SWITCH expression ( caseStatement[switchNode] )+ ;
public final ReflexNode switchStatement() throws RecognitionException {
ReflexNode node = null;
ReflexNode expression28 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
SwitchNode switchNode = new SwitchNode(line, handler, currentScope);
node = switchNode;
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:156:3: ( SWITCH expression ( caseStatement[switchNode] )+ )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:156:6: SWITCH expression ( caseStatement[switchNode] )+
{
match(input,SWITCH,FOLLOW_SWITCH_in_switchStatement469);
pushFollow(FOLLOW_expression_in_switchStatement471);
expression28=expression();
state._fsp--;
switchNode.setSwitchValue(expression28);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:156:73: ( caseStatement[switchNode] )+
int cnt6=0;
loop6:
while (true) {
int alt6=2;
int LA6_0 = input.LA(1);
if ( (LA6_0==Bool||LA6_0==Default||LA6_0==Integer||LA6_0==Long||LA6_0==Number||LA6_0==String) ) {
alt6=1;
}
switch (alt6) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:156:73: caseStatement[switchNode]
{
pushFollow(FOLLOW_caseStatement_in_switchStatement475);
caseStatement(switchNode);
state._fsp--;
}
break;
default :
if ( cnt6 >= 1 ) break loop6;
EarlyExitException eee = new EarlyExitException(6, input);
throw eee;
}
cnt6++;
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "switchStatement"
// $ANTLR start "caseStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:159:1: caseStatement[SwitchNode switchNode] : (v= variant )+ block ;
public final void caseStatement(SwitchNode switchNode) throws RecognitionException {
ReflexNode v =null;
ReflexNode block29 =null;
List caseNodes = new ArrayList<>();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:163:3: ( (v= variant )+ block )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:163:5: (v= variant )+ block
{
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:163:5: (v= variant )+
int cnt7=0;
loop7:
while (true) {
int alt7=2;
int LA7_0 = input.LA(1);
if ( (LA7_0==Bool||LA7_0==Default||LA7_0==Integer||LA7_0==Long||LA7_0==Number||LA7_0==String) ) {
alt7=1;
}
switch (alt7) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:163:6: v= variant
{
pushFollow(FOLLOW_variant_in_caseStatement503);
v=variant();
state._fsp--;
caseNodes.add(v);
}
break;
default :
if ( cnt7 >= 1 ) break loop7;
EarlyExitException eee = new EarlyExitException(7, input);
throw eee;
}
cnt7++;
}
pushFollow(FOLLOW_block_in_caseStatement509);
block29=block();
state._fsp--;
for (ReflexNode caseNode : caseNodes) switchNode.addCase(caseNode, block29);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
}
// $ANTLR end "caseStatement"
// $ANTLR start "matchStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:167:1: matchStatement returns [ReflexNode node] : MATCH (ident= Identifier )? expression ( actions[idNode, matchNode] )* ( otherwise[idNode, matchNode] )? ;
public final ReflexNode matchStatement() throws RecognitionException {
ReflexNode node = null;
CommonTree ident=null;
ReflexNode expression30 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
MatchNode matchNode = new MatchNode(line, handler, currentScope);
node = matchNode;
String matchName = "__mAtCh__";
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:175:3: ( MATCH (ident= Identifier )? expression ( actions[idNode, matchNode] )* ( otherwise[idNode, matchNode] )? )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:175:5: MATCH (ident= Identifier )? expression ( actions[idNode, matchNode] )* ( otherwise[idNode, matchNode] )?
{
match(input,MATCH,FOLLOW_MATCH_in_matchStatement539);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:175:16: (ident= Identifier )?
int alt8=2;
int LA8_0 = input.LA(1);
if ( (LA8_0==Identifier) ) {
alt8=1;
}
switch (alt8) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:175:16: ident= Identifier
{
ident=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_matchStatement543);
}
break;
}
if (ident != null) matchName=ident.getText();
pushFollow(FOLLOW_expression_in_matchStatement553);
expression30=expression();
state._fsp--;
matchNode.setMatchValue(new AssignmentNode(line, handler, currentScope, matchName, null, expression30));
IdentifierNode idNode = new IdentifierNode(line, handler, currentScope, matchName, namespaceStack.asPrefix());
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:180:5: ( actions[idNode, matchNode] )*
loop9:
while (true) {
int alt9=2;
int LA9_0 = input.LA(1);
if ( (LA9_0==Is) ) {
alt9=1;
}
switch (alt9) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:180:5: actions[idNode, matchNode]
{
pushFollow(FOLLOW_actions_in_matchStatement561);
actions(idNode, matchNode);
state._fsp--;
}
break;
default :
break loop9;
}
}
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:181:5: ( otherwise[idNode, matchNode] )?
int alt10=2;
int LA10_0 = input.LA(1);
if ( (LA10_0==OTHERWISE) ) {
alt10=1;
}
switch (alt10) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:181:5: otherwise[idNode, matchNode]
{
pushFollow(FOLLOW_otherwise_in_matchStatement570);
otherwise(idNode, matchNode);
state._fsp--;
}
break;
}
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "matchStatement"
// $ANTLR start "actions"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:184:1: actions[IdentifierNode idNode, MatchNode matchNode] : (comp= comparator[idNode] )+ block ;
public final void actions(IdentifierNode idNode, MatchNode matchNode) throws RecognitionException {
ReflexNode comp =null;
ReflexNode block31 =null;
List compNodes = new ArrayList<>();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:188:3: ( (comp= comparator[idNode] )+ block )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:188:5: (comp= comparator[idNode] )+ block
{
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:188:5: (comp= comparator[idNode] )+
int cnt11=0;
loop11:
while (true) {
int alt11=2;
int LA11_0 = input.LA(1);
if ( (LA11_0==Is) ) {
alt11=1;
}
switch (alt11) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:188:6: comp= comparator[idNode]
{
pushFollow(FOLLOW_comparator_in_actions595);
comp=comparator(idNode);
state._fsp--;
compNodes.add(comp);
}
break;
default :
if ( cnt11 >= 1 ) break loop11;
EarlyExitException eee = new EarlyExitException(11, input);
throw eee;
}
cnt11++;
}
pushFollow(FOLLOW_block_in_actions602);
block31=block();
state._fsp--;
for (ReflexNode compNode : compNodes) matchNode.addCase(compNode, block31);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
}
// $ANTLR end "actions"
// $ANTLR start "comparator"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:191:1: comparator[IdentifierNode idNode] returns [ReflexNode node] : ( Is Equals rhs= expression | Is NEquals rhs= expression | Is GTEquals rhs= expression | Is LTEquals rhs= expression | Is GT rhs= expression | Is LT rhs= expression );
public final ReflexNode comparator(IdentifierNode idNode) throws RecognitionException {
ReflexNode node = null;
ReflexNode rhs =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:196:3: ( Is Equals rhs= expression | Is NEquals rhs= expression | Is GTEquals rhs= expression | Is LTEquals rhs= expression | Is GT rhs= expression | Is LT rhs= expression )
int alt12=6;
int LA12_0 = input.LA(1);
if ( (LA12_0==Is) ) {
switch ( input.LA(2) ) {
case Equals:
{
alt12=1;
}
break;
case NEquals:
{
alt12=2;
}
break;
case GTEquals:
{
alt12=3;
}
break;
case LTEquals:
{
alt12=4;
}
break;
case GT:
{
alt12=5;
}
break;
case LT:
{
alt12=6;
}
break;
default:
int nvaeMark = input.mark();
try {
input.consume();
NoViableAltException nvae =
new NoViableAltException("", 12, 1, input);
throw nvae;
} finally {
input.rewind(nvaeMark);
}
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 12, 0, input);
throw nvae;
}
switch (alt12) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:196:6: Is Equals rhs= expression
{
match(input,Is,FOLLOW_Is_in_comparator631);
match(input,Equals,FOLLOW_Equals_in_comparator633);
pushFollow(FOLLOW_expression_in_comparator637);
rhs=expression();
state._fsp--;
node = new EqualsNode(line, handler, currentScope, idNode, rhs);
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:197:6: Is NEquals rhs= expression
{
match(input,Is,FOLLOW_Is_in_comparator646);
match(input,NEquals,FOLLOW_NEquals_in_comparator648);
pushFollow(FOLLOW_expression_in_comparator652);
rhs=expression();
state._fsp--;
node = new NotEqualsNode(line,handler, currentScope, idNode, rhs);
}
break;
case 3 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:198:6: Is GTEquals rhs= expression
{
match(input,Is,FOLLOW_Is_in_comparator661);
match(input,GTEquals,FOLLOW_GTEquals_in_comparator663);
pushFollow(FOLLOW_expression_in_comparator667);
rhs=expression();
state._fsp--;
node = new GTEqualsNode(line, handler, currentScope, idNode, rhs);
}
break;
case 4 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:199:6: Is LTEquals rhs= expression
{
match(input,Is,FOLLOW_Is_in_comparator676);
match(input,LTEquals,FOLLOW_LTEquals_in_comparator678);
pushFollow(FOLLOW_expression_in_comparator682);
rhs=expression();
state._fsp--;
node = new LTEqualsNode(line, handler, currentScope, idNode, rhs);
}
break;
case 5 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:200:6: Is GT rhs= expression
{
match(input,Is,FOLLOW_Is_in_comparator691);
match(input,GT,FOLLOW_GT_in_comparator693);
pushFollow(FOLLOW_expression_in_comparator697);
rhs=expression();
state._fsp--;
node = new GTNode(line, handler, currentScope, idNode, rhs);
}
break;
case 6 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:201:6: Is LT rhs= expression
{
match(input,Is,FOLLOW_Is_in_comparator706);
match(input,LT,FOLLOW_LT_in_comparator708);
pushFollow(FOLLOW_expression_in_comparator712);
rhs=expression();
state._fsp--;
node = new LTNode(line, handler, currentScope, idNode, rhs);
}
break;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "comparator"
// $ANTLR start "otherwise"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:204:1: otherwise[ReflexNode exp, MatchNode matchNode] : OTHERWISE block ;
public final void otherwise(ReflexNode exp, MatchNode matchNode) throws RecognitionException {
ReflexNode block32 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:209:3: ( OTHERWISE block )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:209:5: OTHERWISE block
{
match(input,OTHERWISE,FOLLOW_OTHERWISE_in_otherwise733);
pushFollow(FOLLOW_block_in_otherwise735);
block32=block();
state._fsp--;
matchNode.addCase(new AtomNode(line, handler, currentScope, new ReflexValue(line, Boolean.TRUE)), block32);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
}
// $ANTLR end "otherwise"
// $ANTLR start "assignment"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:212:1: assignment returns [ReflexNode node] : ( ^( CONSTASSIGNMENT i= Identifier e= expression ) | ^( ASSIGNMENT i= ( Identifier | DottedIdentifier ) (x= indexes )? e= expression ) | ^( PLUSASSIGNMENT i= Identifier e= expression ) | ^( MINUSASSIGNMENT i= Identifier e= expression ) );
public final ReflexNode assignment() throws RecognitionException {
ReflexNode node = null;
CommonTree i=null;
ReflexNode e =null;
java.util.List> x =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:217:3: ( ^( CONSTASSIGNMENT i= Identifier e= expression ) | ^( ASSIGNMENT i= ( Identifier | DottedIdentifier ) (x= indexes )? e= expression ) | ^( PLUSASSIGNMENT i= Identifier e= expression ) | ^( MINUSASSIGNMENT i= Identifier e= expression ) )
int alt14=4;
switch ( input.LA(1) ) {
case CONSTASSIGNMENT:
{
alt14=1;
}
break;
case ASSIGNMENT:
{
alt14=2;
}
break;
case PLUSASSIGNMENT:
{
alt14=3;
}
break;
case MINUSASSIGNMENT:
{
alt14=4;
}
break;
default:
NoViableAltException nvae =
new NoViableAltException("", 14, 0, input);
throw nvae;
}
switch (alt14) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:217:6: ^( CONSTASSIGNMENT i= Identifier e= expression )
{
match(input,CONSTASSIGNMENT,FOLLOW_CONSTASSIGNMENT_in_assignment761);
match(input, Token.DOWN, null);
i=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_assignment765);
pushFollow(FOLLOW_expression_in_assignment769);
e=expression();
state._fsp--;
match(input, Token.UP, null);
node = new ConstAssignmentNode(line, handler, currentScope, (i!=null?i.getText():null), e,
namespaceStack.asPrefix());
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:219:5: ^( ASSIGNMENT i= ( Identifier | DottedIdentifier ) (x= indexes )? e= expression )
{
match(input,ASSIGNMENT,FOLLOW_ASSIGNMENT_in_assignment779);
match(input, Token.DOWN, null);
i=(CommonTree)input.LT(1);
if ( input.LA(1)==DottedIdentifier||input.LA(1)==Identifier ) {
input.consume();
state.errorRecovery=false;
}
else {
MismatchedSetException mse = new MismatchedSetException(null,input);
throw mse;
}
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:219:53: (x= indexes )?
int alt13=2;
int LA13_0 = input.LA(1);
if ( (LA13_0==INDEXES) ) {
alt13=1;
}
switch (alt13) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:219:53: x= indexes
{
pushFollow(FOLLOW_indexes_in_assignment793);
x=indexes();
state._fsp--;
}
break;
}
pushFollow(FOLLOW_expression_in_assignment798);
e=expression();
state._fsp--;
match(input, Token.UP, null);
node = new AssignmentNode(line, handler, currentScope, (i!=null?i.getText():null), x, e);
}
break;
case 3 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:221:5: ^( PLUSASSIGNMENT i= Identifier e= expression )
{
match(input,PLUSASSIGNMENT,FOLLOW_PLUSASSIGNMENT_in_assignment813);
match(input, Token.DOWN, null);
i=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_assignment817);
pushFollow(FOLLOW_expression_in_assignment821);
e=expression();
state._fsp--;
match(input, Token.UP, null);
node = new PlusAssignmentNode(line, handler, currentScope, (i!=null?i.getText():null), e);
}
break;
case 4 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:223:5: ^( MINUSASSIGNMENT i= Identifier e= expression )
{
match(input,MINUSASSIGNMENT,FOLLOW_MINUSASSIGNMENT_in_assignment836);
match(input, Token.DOWN, null);
i=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_assignment840);
pushFollow(FOLLOW_expression_in_assignment844);
e=expression();
state._fsp--;
match(input, Token.UP, null);
node = new PlusAssignmentNode(line, handler, currentScope, (i!=null?i.getText():null), new UnaryMinusNode(line, handler, currentScope, e));
}
break;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "assignment"
// $ANTLR start "breakStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:227:1: breakStatement returns [ReflexNode node] : BREAK ;
public final ReflexNode breakStatement() throws RecognitionException {
ReflexNode node = null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:232:3: ( BREAK )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:232:5: BREAK
{
match(input,BREAK,FOLLOW_BREAK_in_breakStatement874);
node = new BreakNode(line, handler, currentScope);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "breakStatement"
// $ANTLR start "continueStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:235:1: continueStatement returns [ReflexNode node] : CONTINUE ;
public final ReflexNode continueStatement() throws RecognitionException {
ReflexNode node = null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:240:3: ( CONTINUE )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:240:5: CONTINUE
{
match(input,CONTINUE,FOLLOW_CONTINUE_in_continueStatement898);
node = new ContinueNode(line, handler, currentScope);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "continueStatement"
// $ANTLR start "importStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:243:1: importStatement returns [ReflexNode node] : ^( IMPORT l= Identifier ^( IMPORTAS (alias= Identifier )? ) ^( IMPORTPARAMS (params= exprList )? ) ^( IMPORTFROM (jarUris= jarUriList )? ) ) ;
public final ReflexNode importStatement() throws RecognitionException {
ReflexNode node = null;
CommonTree l=null;
CommonTree alias=null;
java.util.List params =null;
java.util.List jarUris =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:248:3: ( ^( IMPORT l= Identifier ^( IMPORTAS (alias= Identifier )? ) ^( IMPORTPARAMS (params= exprList )? ) ^( IMPORTFROM (jarUris= jarUriList )? ) ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:248:5: ^( IMPORT l= Identifier ^( IMPORTAS (alias= Identifier )? ) ^( IMPORTPARAMS (params= exprList )? ) ^( IMPORTFROM (jarUris= jarUriList )? ) )
{
match(input,IMPORT,FOLLOW_IMPORT_in_importStatement923);
match(input, Token.DOWN, null);
l=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_importStatement927);
match(input,IMPORTAS,FOLLOW_IMPORTAS_in_importStatement930);
if ( input.LA(1)==Token.DOWN ) {
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:248:43: (alias= Identifier )?
int alt15=2;
int LA15_0 = input.LA(1);
if ( (LA15_0==Identifier) ) {
alt15=1;
}
switch (alt15) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:248:43: alias= Identifier
{
alias=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_importStatement934);
}
break;
}
match(input, Token.UP, null);
}
match(input,IMPORTPARAMS,FOLLOW_IMPORTPARAMS_in_importStatement939);
if ( input.LA(1)==Token.DOWN ) {
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:248:78: (params= exprList )?
int alt16=2;
int LA16_0 = input.LA(1);
if ( (LA16_0==EXP_LIST) ) {
alt16=1;
}
switch (alt16) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:248:78: params= exprList
{
pushFollow(FOLLOW_exprList_in_importStatement943);
params=exprList();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
}
match(input,IMPORTFROM,FOLLOW_IMPORTFROM_in_importStatement948);
if ( input.LA(1)==Token.DOWN ) {
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:248:110: (jarUris= jarUriList )?
int alt17=2;
int LA17_0 = input.LA(1);
if ( (LA17_0==JARURI_LIST) ) {
alt17=1;
}
switch (alt17) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:248:110: jarUris= jarUriList
{
pushFollow(FOLLOW_jarUriList_in_importStatement952);
jarUris=jarUriList();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
}
match(input, Token.UP, null);
node = new ImportNode(line, handler, currentScope, importHandler, (l!=null?l.getText():null), (alias!=null?alias.getText():null), params, jarUris);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "importStatement"
// $ANTLR start "port"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:251:1: port returns [ReflexNode node] : ( ^( PORTF l= expression r= expression ) | ^( PORTR expression ) );
public final ReflexNode port() throws RecognitionException {
ReflexNode node = null;
ReflexNode l =null;
ReflexNode r =null;
ReflexNode expression33 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:256:4: ( ^( PORTF l= expression r= expression ) | ^( PORTR expression ) )
int alt18=2;
int LA18_0 = input.LA(1);
if ( (LA18_0==PORTF) ) {
alt18=1;
}
else if ( (LA18_0==PORTR) ) {
alt18=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 18, 0, input);
throw nvae;
}
switch (alt18) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:256:6: ^( PORTF l= expression r= expression )
{
match(input,PORTF,FOLLOW_PORTF_in_port981);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_port985);
l=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_port989);
r=expression();
state._fsp--;
match(input, Token.UP, null);
node = new PortANode(line, handler, currentScope, l, r);
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:258:6: ^( PORTR expression )
{
match(input,PORTR,FOLLOW_PORTR_in_port1006);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_port1008);
expression33=expression();
state._fsp--;
match(input, Token.UP, null);
node = new PortANode(line, handler, currentScope, null, expression33);
}
break;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "port"
// $ANTLR start "patchStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:262:1: patchStatement returns [ReflexNode node] : ^( PATCH l= expression i= Identifier b= block ) ;
public final ReflexNode patchStatement() throws RecognitionException {
ReflexNode node = null;
CommonTree i=null;
ReflexNode l =null;
ReflexNode b =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:267:2: ( ^( PATCH l= expression i= Identifier b= block ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:267:4: ^( PATCH l= expression i= Identifier b= block )
{
match(input,PATCH,FOLLOW_PATCH_in_patchStatement1040);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_patchStatement1044);
l=expression();
state._fsp--;
i=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_patchStatement1048);
pushFollow(FOLLOW_block_in_patchStatement1052);
b=block();
state._fsp--;
match(input, Token.UP, null);
node = new PatchNode(line, handler, currentScope, l, (i!=null?i.getText():null), b);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "patchStatement"
// $ANTLR start "pull"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:271:1: pull returns [ReflexNode node] : ^( PULL i= Identifier e= expression ) ;
public final ReflexNode pull() throws RecognitionException {
ReflexNode node = null;
CommonTree i=null;
ReflexNode e =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:276:3: ( ^( PULL i= Identifier e= expression ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:276:5: ^( PULL i= Identifier e= expression )
{
match(input,PULL,FOLLOW_PULL_in_pull1081);
match(input, Token.DOWN, null);
i=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_pull1085);
pushFollow(FOLLOW_expression_in_pull1089);
e=expression();
state._fsp--;
match(input, Token.UP, null);
node = new PullNode(line, handler, currentScope, (i!=null?i.getText():null), e);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "pull"
// $ANTLR start "metapull"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:280:1: metapull returns [ReflexNode node] : ^( METAPULL i= Identifier e= expression ) ;
public final ReflexNode metapull() throws RecognitionException {
ReflexNode node = null;
CommonTree i=null;
ReflexNode e =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:285:3: ( ^( METAPULL i= Identifier e= expression ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:285:5: ^( METAPULL i= Identifier e= expression )
{
match(input,METAPULL,FOLLOW_METAPULL_in_metapull1120);
match(input, Token.DOWN, null);
i=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_metapull1124);
pushFollow(FOLLOW_expression_in_metapull1128);
e=expression();
state._fsp--;
match(input, Token.UP, null);
node = new MetaPullNode(line, handler, currentScope, (i!=null?i.getText():null), e);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "metapull"
// $ANTLR start "push"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:290:1: push returns [ReflexNode node] : ^( PUSH l= expression r= expression ) ;
public final ReflexNode push() throws RecognitionException {
ReflexNode node = null;
ReflexNode l =null;
ReflexNode r =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:295:3: ( ^( PUSH l= expression r= expression ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:295:5: ^( PUSH l= expression r= expression )
{
match(input,PUSH,FOLLOW_PUSH_in_push1160);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_push1164);
l=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_push1168);
r=expression();
state._fsp--;
match(input, Token.UP, null);
node = new PushNode(line, handler, currentScope, l, r);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "push"
// $ANTLR start "throwStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:299:1: throwStatement returns [ReflexNode node] : ^( Throw e= expression ) ;
public final ReflexNode throwStatement() throws RecognitionException {
ReflexNode node = null;
ReflexNode e =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:304:3: ( ^( Throw e= expression ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:304:5: ^( Throw e= expression )
{
match(input,Throw,FOLLOW_Throw_in_throwStatement1199);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_throwStatement1203);
e=expression();
state._fsp--;
match(input, Token.UP, null);
node = new ThrowNode(line, handler, currentScope, e);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "throwStatement"
// $ANTLR start "functionCall"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:308:1: functionCall returns [ReflexNode node] : ( ^( FUNC_CALL Identifier ( exprList )? ) | ^( FUNC_CALL PackageIdentifier ( exprList )? ) | ^( FUNC_CALL Println ( expression )? ) | ^( FUNC_CALL GetLine ( expression )? ) | ^( FUNC_CALL GetCh ( expression )? ) | ^( FUNC_CALL Capabilities ) | ^( FUNC_CALL HasCapability expression ) | ^( FUNC_CALL Print expression ) | ^( FUNC_CALL MapFn Identifier expression ) | ^( FUNC_CALL FilterFn Identifier expression ) | ^( FUNC_CALL Fold Identifier a= expression b= expression ) | ^( FUNC_CALL Any Identifier expression ) | ^( FUNC_CALL All Identifier expression ) | ^( FUNC_CALL TakeWhile Identifier expression ) | ^( FUNC_CALL DropWhile Identifier expression ) | ^( FUNC_CALL SplitWith Identifier expression ) | ^( FUNC_CALL Split str= expression sep= expression quoter= expression ) | ^( FUNC_CALL TypeOf expression ) | ^( FUNC_CALL Assert msg= expression exp= expression ) | ^( FUNC_CALL Size expression ) | ^( FUNC_CALL RPull u= expression ) | ^( FUNC_CALL RPush u= expression v= expression (o= expression )? ) | ^( FUNC_CALL Transpose expression ) | ^( FUNC_CALL Keys expression ) | ^( FUNC_CALL Sort arg= expression asc= expression ) | ^( FUNC_CALL Collate arg= expression locale= expression ) | ^( FUNC_CALL B64Compress expression ) | ^( FUNC_CALL B64Decompress expression ) | ^( FUNC_CALL Debug expression ) | ^( FUNC_CALL Date ( exprList )? ) | ^( FUNC_CALL Time ( expression )? ) | ^( FUNC_CALL Evals expression ) | ^( FUNC_CALL Vars ) | ^( FUNC_CALL ReadDir expression ) | ^( FUNC_CALL MkDir expression ) | ^( FUNC_CALL IsFile expression ) | ^( FUNC_CALL IsFolder expression ) | ^( FUNC_CALL File exprList ) | ^( FUNC_CALL Copy s= expression t= expression ) | ^( FUNC_CALL Archive expression ) | ^( FUNC_CALL Delete expression ) | ^( FUNC_CALL Port expression ) | ^( FUNC_CALL Suspend expression ) | ^( FUNC_CALL Close expression ) | ^( FUNC_CALL Timer ( expression )? ) | ^( FUNC_CALL Merge exprList ) | ^( FUNC_CALL Format exprList ) | ^( FUNC_CALL MergeIf exprList ) | ^( FUNC_CALL Replace v= expression s= expression t= expression ) | ^( FUNC_CALL Message a= expression m= expression ) | ^( FUNC_CALL PutCache v= expression n= expression (exp= expression )? ) | ^( FUNC_CALL GetCache n= expression ) | ^( FUNC_CALL Difference exprList ) | ^( FUNC_CALL Join exprList ) | ^( FUNC_CALL Unique exprList ) | ^( FUNC_CALL Json expression ) | ^( FUNC_CALL MD5 expression ) | ^( FUNC_CALL FromJson expression ) | ^( FUNC_CALL UrlEncode expression ) | ^( FUNC_CALL UrlDecode expression ) | ^( FUNC_CALL Uuid ) | ^( FUNC_CALL Remove Identifier k= expression ) | ^( FUNC_CALL AsyncCall s= expression (p= expression )? ) | ^( FUNC_CALL AsyncCallScript r= expression s= expression (p= expression )? ) | ^( FUNC_CALL AsyncStatus expression ) | ^( FUNC_CALL SuspendWait exprList ) | ^( FUNC_CALL Wait d= expression (in= expression retry= expression )? ) | ^( FUNC_CALL Signal d= expression v= expression ) | ^( FUNC_CALL Chain s= expression (p= expression )? ) | ^( FUNC_CALL Sleep expression ) | ^( FUNC_CALL Matches s= expression r= expression ) | ^( FUNC_CALL Cast a= expression b= expression ) | ^( FUNC_CALL Rand expression ) | ^( FUNC_CALL Round v= expression dp= expression ) | ^( FUNC_CALL Lib expression ) | ^( FUNC_CALL Call a= expression b= expression c= expression ) | ^( FUNC_CALL New a= expression ) | ^( FUNC_CALL GenSchema a= expression ) | ^( FUNC_CALL GenStruct Identifier a= expression ) | ^( FUNC_CALL Template t= expression p= expression ) | ^( FUNC_CALL Spawn p= expression (e= expression f= expression )? ) | ^( FUNC_CALL Defined Identifier ) | ^( FUNC_CALL Defined lookup ) | ^( KERNEL_CALL KernelIdentifier ( exprList )? ) | ^( QUALIFIED_FUNC_CALL DottedIdentifier ( exprList )? ) );
public final ReflexNode functionCall() throws RecognitionException {
ReflexNode node = null;
CommonTree Identifier34=null;
CommonTree PackageIdentifier36=null;
CommonTree Identifier43=null;
CommonTree Identifier45=null;
CommonTree Identifier47=null;
CommonTree Identifier48=null;
CommonTree Identifier50=null;
CommonTree Identifier52=null;
CommonTree Identifier54=null;
CommonTree Identifier56=null;
CommonTree Identifier90=null;
CommonTree Identifier96=null;
CommonTree Identifier97=null;
CommonTree KernelIdentifier99=null;
CommonTree DottedIdentifier101=null;
ReflexNode a =null;
ReflexNode b =null;
ReflexNode str =null;
ReflexNode sep =null;
ReflexNode quoter =null;
ReflexNode msg =null;
ReflexNode exp =null;
ReflexNode u =null;
ReflexNode v =null;
ReflexNode o =null;
ReflexNode arg =null;
ReflexNode asc =null;
ReflexNode locale =null;
ReflexNode s =null;
ReflexNode t =null;
ReflexNode m =null;
ReflexNode n =null;
ReflexNode k =null;
ReflexNode p =null;
ReflexNode r =null;
ReflexNode d =null;
ReflexNode in =null;
ReflexNode retry =null;
ReflexNode dp =null;
ReflexNode c =null;
ReflexNode e =null;
ReflexNode f =null;
java.util.List exprList35 =null;
java.util.List exprList37 =null;
ReflexNode expression38 =null;
ReflexNode expression39 =null;
ReflexNode expression40 =null;
ReflexNode expression41 =null;
ReflexNode expression42 =null;
ReflexNode expression44 =null;
ReflexNode expression46 =null;
ReflexNode expression49 =null;
ReflexNode expression51 =null;
ReflexNode expression53 =null;
ReflexNode expression55 =null;
ReflexNode expression57 =null;
ReflexNode expression58 =null;
ReflexNode expression59 =null;
ReflexNode expression60 =null;
ReflexNode expression61 =null;
ReflexNode expression62 =null;
ReflexNode expression63 =null;
ReflexNode expression64 =null;
java.util.List exprList65 =null;
ReflexNode expression66 =null;
ReflexNode expression67 =null;
ReflexNode expression68 =null;
ReflexNode expression69 =null;
ReflexNode expression70 =null;
ReflexNode expression71 =null;
java.util.List exprList72 =null;
ReflexNode expression73 =null;
ReflexNode expression74 =null;
ReflexNode expression75 =null;
ReflexNode expression76 =null;
ReflexNode expression77 =null;
ReflexNode expression78 =null;
java.util.List exprList79 =null;
java.util.List exprList80 =null;
java.util.List exprList81 =null;
java.util.List exprList82 =null;
java.util.List exprList83 =null;
java.util.List exprList84 =null;
ReflexNode expression85 =null;
ReflexNode expression86 =null;
ReflexNode expression87 =null;
ReflexNode expression88 =null;
ReflexNode expression89 =null;
ReflexNode expression91 =null;
java.util.List exprList92 =null;
ReflexNode expression93 =null;
ReflexNode expression94 =null;
ReflexNode expression95 =null;
ReflexNode lookup98 =null;
java.util.List exprList100 =null;
java.util.List exprList102 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:313:3: ( ^( FUNC_CALL Identifier ( exprList )? ) | ^( FUNC_CALL PackageIdentifier ( exprList )? ) | ^( FUNC_CALL Println ( expression )? ) | ^( FUNC_CALL GetLine ( expression )? ) | ^( FUNC_CALL GetCh ( expression )? ) | ^( FUNC_CALL Capabilities ) | ^( FUNC_CALL HasCapability expression ) | ^( FUNC_CALL Print expression ) | ^( FUNC_CALL MapFn Identifier expression ) | ^( FUNC_CALL FilterFn Identifier expression ) | ^( FUNC_CALL Fold Identifier a= expression b= expression ) | ^( FUNC_CALL Any Identifier expression ) | ^( FUNC_CALL All Identifier expression ) | ^( FUNC_CALL TakeWhile Identifier expression ) | ^( FUNC_CALL DropWhile Identifier expression ) | ^( FUNC_CALL SplitWith Identifier expression ) | ^( FUNC_CALL Split str= expression sep= expression quoter= expression ) | ^( FUNC_CALL TypeOf expression ) | ^( FUNC_CALL Assert msg= expression exp= expression ) | ^( FUNC_CALL Size expression ) | ^( FUNC_CALL RPull u= expression ) | ^( FUNC_CALL RPush u= expression v= expression (o= expression )? ) | ^( FUNC_CALL Transpose expression ) | ^( FUNC_CALL Keys expression ) | ^( FUNC_CALL Sort arg= expression asc= expression ) | ^( FUNC_CALL Collate arg= expression locale= expression ) | ^( FUNC_CALL B64Compress expression ) | ^( FUNC_CALL B64Decompress expression ) | ^( FUNC_CALL Debug expression ) | ^( FUNC_CALL Date ( exprList )? ) | ^( FUNC_CALL Time ( expression )? ) | ^( FUNC_CALL Evals expression ) | ^( FUNC_CALL Vars ) | ^( FUNC_CALL ReadDir expression ) | ^( FUNC_CALL MkDir expression ) | ^( FUNC_CALL IsFile expression ) | ^( FUNC_CALL IsFolder expression ) | ^( FUNC_CALL File exprList ) | ^( FUNC_CALL Copy s= expression t= expression ) | ^( FUNC_CALL Archive expression ) | ^( FUNC_CALL Delete expression ) | ^( FUNC_CALL Port expression ) | ^( FUNC_CALL Suspend expression ) | ^( FUNC_CALL Close expression ) | ^( FUNC_CALL Timer ( expression )? ) | ^( FUNC_CALL Merge exprList ) | ^( FUNC_CALL Format exprList ) | ^( FUNC_CALL MergeIf exprList ) | ^( FUNC_CALL Replace v= expression s= expression t= expression ) | ^( FUNC_CALL Message a= expression m= expression ) | ^( FUNC_CALL PutCache v= expression n= expression (exp= expression )? ) | ^( FUNC_CALL GetCache n= expression ) | ^( FUNC_CALL Difference exprList ) | ^( FUNC_CALL Join exprList ) | ^( FUNC_CALL Unique exprList ) | ^( FUNC_CALL Json expression ) | ^( FUNC_CALL MD5 expression ) | ^( FUNC_CALL FromJson expression ) | ^( FUNC_CALL UrlEncode expression ) | ^( FUNC_CALL UrlDecode expression ) | ^( FUNC_CALL Uuid ) | ^( FUNC_CALL Remove Identifier k= expression ) | ^( FUNC_CALL AsyncCall s= expression (p= expression )? ) | ^( FUNC_CALL AsyncCallScript r= expression s= expression (p= expression )? ) | ^( FUNC_CALL AsyncStatus expression ) | ^( FUNC_CALL SuspendWait exprList ) | ^( FUNC_CALL Wait d= expression (in= expression retry= expression )? ) | ^( FUNC_CALL Signal d= expression v= expression ) | ^( FUNC_CALL Chain s= expression (p= expression )? ) | ^( FUNC_CALL Sleep expression ) | ^( FUNC_CALL Matches s= expression r= expression ) | ^( FUNC_CALL Cast a= expression b= expression ) | ^( FUNC_CALL Rand expression ) | ^( FUNC_CALL Round v= expression dp= expression ) | ^( FUNC_CALL Lib expression ) | ^( FUNC_CALL Call a= expression b= expression c= expression ) | ^( FUNC_CALL New a= expression ) | ^( FUNC_CALL GenSchema a= expression ) | ^( FUNC_CALL GenStruct Identifier a= expression ) | ^( FUNC_CALL Template t= expression p= expression ) | ^( FUNC_CALL Spawn p= expression (e= expression f= expression )? ) | ^( FUNC_CALL Defined Identifier ) | ^( FUNC_CALL Defined lookup ) | ^( KERNEL_CALL KernelIdentifier ( exprList )? ) | ^( QUALIFIED_FUNC_CALL DottedIdentifier ( exprList )? ) )
int alt36=85;
alt36 = dfa36.predict(input);
switch (alt36) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:313:6: ^( FUNC_CALL Identifier ( exprList )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1235);
match(input, Token.DOWN, null);
Identifier34=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall1237);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:313:29: ( exprList )?
int alt19=2;
int LA19_0 = input.LA(1);
if ( (LA19_0==EXP_LIST) ) {
alt19=1;
}
switch (alt19) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:313:29: exprList
{
pushFollow(FOLLOW_exprList_in_functionCall1239);
exprList35=exprList();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new FunctionCallNode(line, handler, currentScope, (Identifier34!=null?Identifier34.getText():null), exprList35, languageRegistry, importHandler, namespaceStack.asPrefix());
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:314:6: ^( FUNC_CALL PackageIdentifier ( exprList )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1251);
match(input, Token.DOWN, null);
PackageIdentifier36=(CommonTree)match(input,PackageIdentifier,FOLLOW_PackageIdentifier_in_functionCall1253);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:314:36: ( exprList )?
int alt20=2;
int LA20_0 = input.LA(1);
if ( (LA20_0==EXP_LIST) ) {
alt20=1;
}
switch (alt20) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:314:36: exprList
{
pushFollow(FOLLOW_exprList_in_functionCall1255);
exprList37=exprList();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new PackageCallNode(line, handler, currentScope, importHandler, (PackageIdentifier36!=null?PackageIdentifier36.getText():null), exprList37);
}
break;
case 3 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:315:6: ^( FUNC_CALL Println ( expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1267);
match(input, Token.DOWN, null);
match(input,Println,FOLLOW_Println_in_functionCall1269);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:315:26: ( expression )?
int alt21=2;
int LA21_0 = input.LA(1);
if ( (LA21_0==Add||LA21_0==And||LA21_0==Bool||LA21_0==Divide||LA21_0==Equals||(LA21_0 >= GT && LA21_0 <= GTEquals)||LA21_0==In||LA21_0==Integer||(LA21_0 >= LOOKUP && LA21_0 <= LTEquals)||LA21_0==Long||(LA21_0 >= Modulus && LA21_0 <= NEquals)||(LA21_0 >= Null && LA21_0 <= Number)||LA21_0==Or||LA21_0==Pow||LA21_0==RANGELOOKUP||LA21_0==SPARSE||LA21_0==Subtract||LA21_0==TERNARY||LA21_0==UNARY_MIN) ) {
alt21=1;
}
switch (alt21) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:315:26: expression
{
pushFollow(FOLLOW_expression_in_functionCall1271);
expression38=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new PrintlnNode(line, handler, currentScope, expression38);
}
break;
case 4 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:316:6: ^( FUNC_CALL GetLine ( expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1283);
match(input, Token.DOWN, null);
match(input,GetLine,FOLLOW_GetLine_in_functionCall1285);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:316:26: ( expression )?
int alt22=2;
int LA22_0 = input.LA(1);
if ( (LA22_0==Add||LA22_0==And||LA22_0==Bool||LA22_0==Divide||LA22_0==Equals||(LA22_0 >= GT && LA22_0 <= GTEquals)||LA22_0==In||LA22_0==Integer||(LA22_0 >= LOOKUP && LA22_0 <= LTEquals)||LA22_0==Long||(LA22_0 >= Modulus && LA22_0 <= NEquals)||(LA22_0 >= Null && LA22_0 <= Number)||LA22_0==Or||LA22_0==Pow||LA22_0==RANGELOOKUP||LA22_0==SPARSE||LA22_0==Subtract||LA22_0==TERNARY||LA22_0==UNARY_MIN) ) {
alt22=1;
}
switch (alt22) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:316:26: expression
{
pushFollow(FOLLOW_expression_in_functionCall1287);
expression39=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new GetLineNode(line, handler, currentScope, expression39);
}
break;
case 5 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:317:6: ^( FUNC_CALL GetCh ( expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1299);
match(input, Token.DOWN, null);
match(input,GetCh,FOLLOW_GetCh_in_functionCall1301);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:317:24: ( expression )?
int alt23=2;
int LA23_0 = input.LA(1);
if ( (LA23_0==Add||LA23_0==And||LA23_0==Bool||LA23_0==Divide||LA23_0==Equals||(LA23_0 >= GT && LA23_0 <= GTEquals)||LA23_0==In||LA23_0==Integer||(LA23_0 >= LOOKUP && LA23_0 <= LTEquals)||LA23_0==Long||(LA23_0 >= Modulus && LA23_0 <= NEquals)||(LA23_0 >= Null && LA23_0 <= Number)||LA23_0==Or||LA23_0==Pow||LA23_0==RANGELOOKUP||LA23_0==SPARSE||LA23_0==Subtract||LA23_0==TERNARY||LA23_0==UNARY_MIN) ) {
alt23=1;
}
switch (alt23) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:317:24: expression
{
pushFollow(FOLLOW_expression_in_functionCall1303);
expression40=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new GetChNode(line, handler, currentScope, expression40);
}
break;
case 6 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:318:6: ^( FUNC_CALL Capabilities )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1315);
match(input, Token.DOWN, null);
match(input,Capabilities,FOLLOW_Capabilities_in_functionCall1317);
match(input, Token.UP, null);
node = new CapabilitiesNode(line, handler, currentScope);
}
break;
case 7 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:319:6: ^( FUNC_CALL HasCapability expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1329);
match(input, Token.DOWN, null);
match(input,HasCapability,FOLLOW_HasCapability_in_functionCall1331);
pushFollow(FOLLOW_expression_in_functionCall1333);
expression41=expression();
state._fsp--;
match(input, Token.UP, null);
node = new HasCapabilityNode(line, handler, currentScope, expression41);
}
break;
case 8 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:320:6: ^( FUNC_CALL Print expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1345);
match(input, Token.DOWN, null);
match(input,Print,FOLLOW_Print_in_functionCall1347);
pushFollow(FOLLOW_expression_in_functionCall1349);
expression42=expression();
state._fsp--;
match(input, Token.UP, null);
node = new PrintNode(line, handler, currentScope, expression42);
}
break;
case 9 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:321:6: ^( FUNC_CALL MapFn Identifier expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1360);
match(input, Token.DOWN, null);
match(input,MapFn,FOLLOW_MapFn_in_functionCall1362);
Identifier43=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall1364);
pushFollow(FOLLOW_expression_in_functionCall1366);
expression44=expression();
state._fsp--;
match(input, Token.UP, null);
node = new MapFnNode(line, handler, currentScope, (Identifier43!=null?Identifier43.getText():null), expression44, languageRegistry, importHandler);
}
break;
case 10 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:322:6: ^( FUNC_CALL FilterFn Identifier expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1377);
match(input, Token.DOWN, null);
match(input,FilterFn,FOLLOW_FilterFn_in_functionCall1379);
Identifier45=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall1381);
pushFollow(FOLLOW_expression_in_functionCall1383);
expression46=expression();
state._fsp--;
match(input, Token.UP, null);
node = new FilterFnNode(line, handler, currentScope, (Identifier45!=null?Identifier45.getText():null), expression46, languageRegistry, importHandler);
}
break;
case 11 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:323:6: ^( FUNC_CALL Fold Identifier a= expression b= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1394);
match(input, Token.DOWN, null);
match(input,Fold,FOLLOW_Fold_in_functionCall1396);
Identifier47=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall1398);
pushFollow(FOLLOW_expression_in_functionCall1402);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall1406);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new FoldNode(line, handler, currentScope, (Identifier47!=null?Identifier47.getText():null), a, b, languageRegistry, importHandler);
}
break;
case 12 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:324:6: ^( FUNC_CALL Any Identifier expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1417);
match(input, Token.DOWN, null);
match(input,Any,FOLLOW_Any_in_functionCall1419);
Identifier48=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall1421);
pushFollow(FOLLOW_expression_in_functionCall1423);
expression49=expression();
state._fsp--;
match(input, Token.UP, null);
node = new AnyNode(line, handler, currentScope, (Identifier48!=null?Identifier48.getText():null), expression49, languageRegistry, importHandler);
}
break;
case 13 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:325:6: ^( FUNC_CALL All Identifier expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1434);
match(input, Token.DOWN, null);
match(input,All,FOLLOW_All_in_functionCall1436);
Identifier50=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall1438);
pushFollow(FOLLOW_expression_in_functionCall1440);
expression51=expression();
state._fsp--;
match(input, Token.UP, null);
node = new AllNode(line, handler, currentScope, (Identifier50!=null?Identifier50.getText():null), expression51, languageRegistry, importHandler);
}
break;
case 14 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:326:6: ^( FUNC_CALL TakeWhile Identifier expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1451);
match(input, Token.DOWN, null);
match(input,TakeWhile,FOLLOW_TakeWhile_in_functionCall1453);
Identifier52=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall1455);
pushFollow(FOLLOW_expression_in_functionCall1457);
expression53=expression();
state._fsp--;
match(input, Token.UP, null);
node = new TakeWhileNode(line, handler, currentScope, (Identifier52!=null?Identifier52.getText():null), expression53, languageRegistry, importHandler);
}
break;
case 15 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:327:6: ^( FUNC_CALL DropWhile Identifier expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1468);
match(input, Token.DOWN, null);
match(input,DropWhile,FOLLOW_DropWhile_in_functionCall1470);
Identifier54=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall1472);
pushFollow(FOLLOW_expression_in_functionCall1474);
expression55=expression();
state._fsp--;
match(input, Token.UP, null);
node = new DropWhileNode(line, handler, currentScope, (Identifier54!=null?Identifier54.getText():null), expression55, languageRegistry, importHandler);
}
break;
case 16 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:328:6: ^( FUNC_CALL SplitWith Identifier expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1485);
match(input, Token.DOWN, null);
match(input,SplitWith,FOLLOW_SplitWith_in_functionCall1487);
Identifier56=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall1489);
pushFollow(FOLLOW_expression_in_functionCall1491);
expression57=expression();
state._fsp--;
match(input, Token.UP, null);
node = new SplitWithNode(line, handler, currentScope, (Identifier56!=null?Identifier56.getText():null), expression57, languageRegistry, importHandler);
}
break;
case 17 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:329:6: ^( FUNC_CALL Split str= expression sep= expression quoter= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1502);
match(input, Token.DOWN, null);
match(input,Split,FOLLOW_Split_in_functionCall1504);
pushFollow(FOLLOW_expression_in_functionCall1508);
str=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall1512);
sep=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall1516);
quoter=expression();
state._fsp--;
match(input, Token.UP, null);
node = new SplitNode(line, handler, currentScope, str, sep, quoter, languageRegistry, importHandler);
}
break;
case 18 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:330:6: ^( FUNC_CALL TypeOf expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1527);
match(input, Token.DOWN, null);
match(input,TypeOf,FOLLOW_TypeOf_in_functionCall1529);
pushFollow(FOLLOW_expression_in_functionCall1531);
expression58=expression();
state._fsp--;
match(input, Token.UP, null);
node = new TypeOfNode(line, handler, currentScope, expression58);
}
break;
case 19 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:331:6: ^( FUNC_CALL Assert msg= expression exp= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1542);
match(input, Token.DOWN, null);
match(input,Assert,FOLLOW_Assert_in_functionCall1544);
pushFollow(FOLLOW_expression_in_functionCall1548);
msg=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall1552);
exp=expression();
state._fsp--;
match(input, Token.UP, null);
node = new AssertNode(line, handler, currentScope, msg, exp);
}
break;
case 20 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:332:6: ^( FUNC_CALL Size expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1563);
match(input, Token.DOWN, null);
match(input,Size,FOLLOW_Size_in_functionCall1565);
pushFollow(FOLLOW_expression_in_functionCall1567);
expression59=expression();
state._fsp--;
match(input, Token.UP, null);
node = new SizeNode(line, handler,currentScope, expression59);
}
break;
case 21 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:333:6: ^( FUNC_CALL RPull u= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1578);
match(input, Token.DOWN, null);
match(input,RPull,FOLLOW_RPull_in_functionCall1580);
pushFollow(FOLLOW_expression_in_functionCall1584);
u=expression();
state._fsp--;
match(input, Token.UP, null);
node = new RapturePullNode(line, handler, currentScope, u, null);
}
break;
case 22 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:334:6: ^( FUNC_CALL RPush u= expression v= expression (o= expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1595);
match(input, Token.DOWN, null);
match(input,RPush,FOLLOW_RPush_in_functionCall1597);
pushFollow(FOLLOW_expression_in_functionCall1601);
u=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall1605);
v=expression();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:334:51: (o= expression )?
int alt24=2;
int LA24_0 = input.LA(1);
if ( (LA24_0==Add||LA24_0==And||LA24_0==Bool||LA24_0==Divide||LA24_0==Equals||(LA24_0 >= GT && LA24_0 <= GTEquals)||LA24_0==In||LA24_0==Integer||(LA24_0 >= LOOKUP && LA24_0 <= LTEquals)||LA24_0==Long||(LA24_0 >= Modulus && LA24_0 <= NEquals)||(LA24_0 >= Null && LA24_0 <= Number)||LA24_0==Or||LA24_0==Pow||LA24_0==RANGELOOKUP||LA24_0==SPARSE||LA24_0==Subtract||LA24_0==TERNARY||LA24_0==UNARY_MIN) ) {
alt24=1;
}
switch (alt24) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:334:51: o= expression
{
pushFollow(FOLLOW_expression_in_functionCall1609);
o=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new RapturePushNode(line, handler, currentScope, u, v, o);
}
break;
case 23 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:335:6: ^( FUNC_CALL Transpose expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1621);
match(input, Token.DOWN, null);
match(input,Transpose,FOLLOW_Transpose_in_functionCall1623);
pushFollow(FOLLOW_expression_in_functionCall1625);
expression60=expression();
state._fsp--;
match(input, Token.UP, null);
node = new TransposeNode(line, handler, currentScope, expression60);
}
break;
case 24 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:336:6: ^( FUNC_CALL Keys expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1636);
match(input, Token.DOWN, null);
match(input,Keys,FOLLOW_Keys_in_functionCall1638);
pushFollow(FOLLOW_expression_in_functionCall1640);
expression61=expression();
state._fsp--;
match(input, Token.UP, null);
node = new KeysNode(line, handler, currentScope, expression61);
}
break;
case 25 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:337:6: ^( FUNC_CALL Sort arg= expression asc= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1651);
match(input, Token.DOWN, null);
match(input,Sort,FOLLOW_Sort_in_functionCall1653);
pushFollow(FOLLOW_expression_in_functionCall1657);
arg=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall1661);
asc=expression();
state._fsp--;
match(input, Token.UP, null);
node = new SortNode(line, handler, currentScope, arg, asc);
}
break;
case 26 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:338:6: ^( FUNC_CALL Collate arg= expression locale= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1672);
match(input, Token.DOWN, null);
match(input,Collate,FOLLOW_Collate_in_functionCall1674);
pushFollow(FOLLOW_expression_in_functionCall1678);
arg=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall1682);
locale=expression();
state._fsp--;
match(input, Token.UP, null);
node = new CollateNode(line, handler, currentScope, arg, locale);
}
break;
case 27 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:339:6: ^( FUNC_CALL B64Compress expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1693);
match(input, Token.DOWN, null);
match(input,B64Compress,FOLLOW_B64Compress_in_functionCall1695);
pushFollow(FOLLOW_expression_in_functionCall1697);
expression62=expression();
state._fsp--;
match(input, Token.UP, null);
node = new B64Compress(line, handler, currentScope, expression62);
}
break;
case 28 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:340:6: ^( FUNC_CALL B64Decompress expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1708);
match(input, Token.DOWN, null);
match(input,B64Decompress,FOLLOW_B64Decompress_in_functionCall1710);
pushFollow(FOLLOW_expression_in_functionCall1712);
expression63=expression();
state._fsp--;
match(input, Token.UP, null);
node = new B64Decompress(line, handler, currentScope, expression63);
}
break;
case 29 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:341:6: ^( FUNC_CALL Debug expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1723);
match(input, Token.DOWN, null);
match(input,Debug,FOLLOW_Debug_in_functionCall1725);
pushFollow(FOLLOW_expression_in_functionCall1727);
expression64=expression();
state._fsp--;
match(input, Token.UP, null);
node = new DebugNode(line, handler, currentScope, expression64);
}
break;
case 30 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:342:6: ^( FUNC_CALL Date ( exprList )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1738);
match(input, Token.DOWN, null);
match(input,Date,FOLLOW_Date_in_functionCall1740);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:342:23: ( exprList )?
int alt25=2;
int LA25_0 = input.LA(1);
if ( (LA25_0==EXP_LIST) ) {
alt25=1;
}
switch (alt25) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:342:23: exprList
{
pushFollow(FOLLOW_exprList_in_functionCall1742);
exprList65=exprList();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new DateNode(line, handler, currentScope, exprList65);
}
break;
case 31 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:343:6: ^( FUNC_CALL Time ( expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1755);
match(input, Token.DOWN, null);
match(input,Time,FOLLOW_Time_in_functionCall1757);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:343:23: ( expression )?
int alt26=2;
int LA26_0 = input.LA(1);
if ( (LA26_0==Add||LA26_0==And||LA26_0==Bool||LA26_0==Divide||LA26_0==Equals||(LA26_0 >= GT && LA26_0 <= GTEquals)||LA26_0==In||LA26_0==Integer||(LA26_0 >= LOOKUP && LA26_0 <= LTEquals)||LA26_0==Long||(LA26_0 >= Modulus && LA26_0 <= NEquals)||(LA26_0 >= Null && LA26_0 <= Number)||LA26_0==Or||LA26_0==Pow||LA26_0==RANGELOOKUP||LA26_0==SPARSE||LA26_0==Subtract||LA26_0==TERNARY||LA26_0==UNARY_MIN) ) {
alt26=1;
}
switch (alt26) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:343:23: expression
{
pushFollow(FOLLOW_expression_in_functionCall1759);
expression66=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new TimeNode(line, handler, currentScope, expression66);
}
break;
case 32 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:344:6: ^( FUNC_CALL Evals expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1772);
match(input, Token.DOWN, null);
match(input,Evals,FOLLOW_Evals_in_functionCall1774);
pushFollow(FOLLOW_expression_in_functionCall1776);
expression67=expression();
state._fsp--;
match(input, Token.UP, null);
node = new QuotedStringNode(line, handler, currentScope, expression67);
}
break;
case 33 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:345:6: ^( FUNC_CALL Vars )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1788);
match(input, Token.DOWN, null);
match(input,Vars,FOLLOW_Vars_in_functionCall1790);
match(input, Token.UP, null);
node = new VarsNode(line, handler, currentScope);
}
break;
case 34 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:346:6: ^( FUNC_CALL ReadDir expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1801);
match(input, Token.DOWN, null);
match(input,ReadDir,FOLLOW_ReadDir_in_functionCall1803);
pushFollow(FOLLOW_expression_in_functionCall1805);
expression68=expression();
state._fsp--;
match(input, Token.UP, null);
node = new ReadDirNode(line, handler, currentScope, expression68);
}
break;
case 35 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:347:6: ^( FUNC_CALL MkDir expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1816);
match(input, Token.DOWN, null);
match(input,MkDir,FOLLOW_MkDir_in_functionCall1818);
pushFollow(FOLLOW_expression_in_functionCall1820);
expression69=expression();
state._fsp--;
match(input, Token.UP, null);
node = new MkDirNode(line, handler, currentScope, expression69);
}
break;
case 36 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:348:6: ^( FUNC_CALL IsFile expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1831);
match(input, Token.DOWN, null);
match(input,IsFile,FOLLOW_IsFile_in_functionCall1833);
pushFollow(FOLLOW_expression_in_functionCall1835);
expression70=expression();
state._fsp--;
match(input, Token.UP, null);
node = new IsFileNode(line, handler, currentScope, expression70);
}
break;
case 37 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:349:6: ^( FUNC_CALL IsFolder expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1846);
match(input, Token.DOWN, null);
match(input,IsFolder,FOLLOW_IsFolder_in_functionCall1848);
pushFollow(FOLLOW_expression_in_functionCall1850);
expression71=expression();
state._fsp--;
match(input, Token.UP, null);
node = new IsFolderNode(line, handler, currentScope, expression71);
}
break;
case 38 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:350:6: ^( FUNC_CALL File exprList )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1861);
match(input, Token.DOWN, null);
match(input,File,FOLLOW_File_in_functionCall1863);
pushFollow(FOLLOW_exprList_in_functionCall1865);
exprList72=exprList();
state._fsp--;
match(input, Token.UP, null);
node = new FileNode(line, handler, currentScope, exprList72);
}
break;
case 39 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:351:6: ^( FUNC_CALL Copy s= expression t= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1876);
match(input, Token.DOWN, null);
match(input,Copy,FOLLOW_Copy_in_functionCall1878);
pushFollow(FOLLOW_expression_in_functionCall1882);
s=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall1886);
t=expression();
state._fsp--;
match(input, Token.UP, null);
node = new CopyNode(line, handler, currentScope, s, t);
}
break;
case 40 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:352:6: ^( FUNC_CALL Archive expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1897);
match(input, Token.DOWN, null);
match(input,Archive,FOLLOW_Archive_in_functionCall1899);
pushFollow(FOLLOW_expression_in_functionCall1901);
expression73=expression();
state._fsp--;
match(input, Token.UP, null);
node = new ArchiveNode(line, handler, currentScope, expression73);
}
break;
case 41 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:353:6: ^( FUNC_CALL Delete expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1912);
match(input, Token.DOWN, null);
match(input,Delete,FOLLOW_Delete_in_functionCall1914);
pushFollow(FOLLOW_expression_in_functionCall1916);
expression74=expression();
state._fsp--;
match(input, Token.UP, null);
node = new DeleteNode(line, handler, currentScope, expression74);
}
break;
case 42 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:354:6: ^( FUNC_CALL Port expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1927);
match(input, Token.DOWN, null);
match(input,Port,FOLLOW_Port_in_functionCall1929);
pushFollow(FOLLOW_expression_in_functionCall1931);
expression75=expression();
state._fsp--;
match(input, Token.UP, null);
node = new PortNode(line, handler, currentScope, expression75);
}
break;
case 43 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:355:6: ^( FUNC_CALL Suspend expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1942);
match(input, Token.DOWN, null);
match(input,Suspend,FOLLOW_Suspend_in_functionCall1944);
pushFollow(FOLLOW_expression_in_functionCall1946);
expression76=expression();
state._fsp--;
match(input, Token.UP, null);
node = new SuspendNode(line, handler, currentScope, expression76);
}
break;
case 44 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:356:6: ^( FUNC_CALL Close expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1957);
match(input, Token.DOWN, null);
match(input,Close,FOLLOW_Close_in_functionCall1959);
pushFollow(FOLLOW_expression_in_functionCall1961);
expression77=expression();
state._fsp--;
match(input, Token.UP, null);
node = new CloseNode(line, handler, currentScope, expression77);
}
break;
case 45 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:357:6: ^( FUNC_CALL Timer ( expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1972);
match(input, Token.DOWN, null);
match(input,Timer,FOLLOW_Timer_in_functionCall1974);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:357:24: ( expression )?
int alt27=2;
int LA27_0 = input.LA(1);
if ( (LA27_0==Add||LA27_0==And||LA27_0==Bool||LA27_0==Divide||LA27_0==Equals||(LA27_0 >= GT && LA27_0 <= GTEquals)||LA27_0==In||LA27_0==Integer||(LA27_0 >= LOOKUP && LA27_0 <= LTEquals)||LA27_0==Long||(LA27_0 >= Modulus && LA27_0 <= NEquals)||(LA27_0 >= Null && LA27_0 <= Number)||LA27_0==Or||LA27_0==Pow||LA27_0==RANGELOOKUP||LA27_0==SPARSE||LA27_0==Subtract||LA27_0==TERNARY||LA27_0==UNARY_MIN) ) {
alt27=1;
}
switch (alt27) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:357:24: expression
{
pushFollow(FOLLOW_expression_in_functionCall1976);
expression78=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new TimerNode(line, handler, currentScope, expression78);
}
break;
case 46 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:358:6: ^( FUNC_CALL Merge exprList )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall1988);
match(input, Token.DOWN, null);
match(input,Merge,FOLLOW_Merge_in_functionCall1990);
pushFollow(FOLLOW_exprList_in_functionCall1992);
exprList79=exprList();
state._fsp--;
match(input, Token.UP, null);
node = new MergeNode(line, handler, currentScope, exprList79);
}
break;
case 47 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:359:6: ^( FUNC_CALL Format exprList )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2003);
match(input, Token.DOWN, null);
match(input,Format,FOLLOW_Format_in_functionCall2005);
pushFollow(FOLLOW_exprList_in_functionCall2007);
exprList80=exprList();
state._fsp--;
match(input, Token.UP, null);
node = new FormatNode(line, handler, currentScope, exprList80);
}
break;
case 48 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:360:6: ^( FUNC_CALL MergeIf exprList )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2018);
match(input, Token.DOWN, null);
match(input,MergeIf,FOLLOW_MergeIf_in_functionCall2020);
pushFollow(FOLLOW_exprList_in_functionCall2022);
exprList81=exprList();
state._fsp--;
match(input, Token.UP, null);
node = new MergeIfNode(line, handler, currentScope, exprList81);
}
break;
case 49 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:361:6: ^( FUNC_CALL Replace v= expression s= expression t= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2033);
match(input, Token.DOWN, null);
match(input,Replace,FOLLOW_Replace_in_functionCall2035);
pushFollow(FOLLOW_expression_in_functionCall2039);
v=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2043);
s=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2047);
t=expression();
state._fsp--;
match(input, Token.UP, null);
node = new ReplaceNode(line, handler, currentScope, v, s, t);
}
break;
case 50 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:362:6: ^( FUNC_CALL Message a= expression m= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2058);
match(input, Token.DOWN, null);
match(input,Message,FOLLOW_Message_in_functionCall2060);
pushFollow(FOLLOW_expression_in_functionCall2064);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2068);
m=expression();
state._fsp--;
match(input, Token.UP, null);
node = new MessageNode(line, handler, currentScope, a, m);
}
break;
case 51 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:363:6: ^( FUNC_CALL PutCache v= expression n= expression (exp= expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2079);
match(input, Token.DOWN, null);
match(input,PutCache,FOLLOW_PutCache_in_functionCall2081);
pushFollow(FOLLOW_expression_in_functionCall2085);
v=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2089);
n=expression();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:363:56: (exp= expression )?
int alt28=2;
int LA28_0 = input.LA(1);
if ( (LA28_0==Add||LA28_0==And||LA28_0==Bool||LA28_0==Divide||LA28_0==Equals||(LA28_0 >= GT && LA28_0 <= GTEquals)||LA28_0==In||LA28_0==Integer||(LA28_0 >= LOOKUP && LA28_0 <= LTEquals)||LA28_0==Long||(LA28_0 >= Modulus && LA28_0 <= NEquals)||(LA28_0 >= Null && LA28_0 <= Number)||LA28_0==Or||LA28_0==Pow||LA28_0==RANGELOOKUP||LA28_0==SPARSE||LA28_0==Subtract||LA28_0==TERNARY||LA28_0==UNARY_MIN) ) {
alt28=1;
}
switch (alt28) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:363:56: exp= expression
{
pushFollow(FOLLOW_expression_in_functionCall2093);
exp=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new PutCacheNode(line, handler, currentScope, v, n, exp);
}
break;
case 52 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:364:6: ^( FUNC_CALL GetCache n= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2105);
match(input, Token.DOWN, null);
match(input,GetCache,FOLLOW_GetCache_in_functionCall2107);
pushFollow(FOLLOW_expression_in_functionCall2111);
n=expression();
state._fsp--;
match(input, Token.UP, null);
node = new GetCacheNode(line, handler, currentScope, n);
}
break;
case 53 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:365:6: ^( FUNC_CALL Difference exprList )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2122);
match(input, Token.DOWN, null);
match(input,Difference,FOLLOW_Difference_in_functionCall2124);
pushFollow(FOLLOW_exprList_in_functionCall2126);
exprList82=exprList();
state._fsp--;
match(input, Token.UP, null);
node = new DifferenceNode(line, handler, currentScope, exprList82);
}
break;
case 54 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:366:6: ^( FUNC_CALL Join exprList )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2137);
match(input, Token.DOWN, null);
match(input,Join,FOLLOW_Join_in_functionCall2139);
pushFollow(FOLLOW_exprList_in_functionCall2141);
exprList83=exprList();
state._fsp--;
match(input, Token.UP, null);
node = new JoinNode(line, handler, currentScope, exprList83);
}
break;
case 55 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:367:6: ^( FUNC_CALL Unique exprList )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2152);
match(input, Token.DOWN, null);
match(input,Unique,FOLLOW_Unique_in_functionCall2154);
pushFollow(FOLLOW_exprList_in_functionCall2156);
exprList84=exprList();
state._fsp--;
match(input, Token.UP, null);
node = new UniqueNode(line, handler, currentScope, exprList84);
}
break;
case 56 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:368:6: ^( FUNC_CALL Json expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2167);
match(input, Token.DOWN, null);
match(input,Json,FOLLOW_Json_in_functionCall2169);
pushFollow(FOLLOW_expression_in_functionCall2171);
expression85=expression();
state._fsp--;
match(input, Token.UP, null);
node = new JsonNode(line, handler, currentScope, expression85);
}
break;
case 57 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:370:6: ^( FUNC_CALL MD5 expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2183);
match(input, Token.DOWN, null);
match(input,MD5,FOLLOW_MD5_in_functionCall2185);
pushFollow(FOLLOW_expression_in_functionCall2188);
expression86=expression();
state._fsp--;
match(input, Token.UP, null);
node = new MD5Node(line, handler, currentScope, expression86);
}
break;
case 58 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:371:6: ^( FUNC_CALL FromJson expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2199);
match(input, Token.DOWN, null);
match(input,FromJson,FOLLOW_FromJson_in_functionCall2201);
pushFollow(FOLLOW_expression_in_functionCall2203);
expression87=expression();
state._fsp--;
match(input, Token.UP, null);
node = new FromJsonNode(line, handler, currentScope, expression87);
}
break;
case 59 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:372:6: ^( FUNC_CALL UrlEncode expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2214);
match(input, Token.DOWN, null);
match(input,UrlEncode,FOLLOW_UrlEncode_in_functionCall2216);
pushFollow(FOLLOW_expression_in_functionCall2218);
expression88=expression();
state._fsp--;
match(input, Token.UP, null);
node = new UrlEncodeNode(line, handler, currentScope, expression88);
}
break;
case 60 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:373:6: ^( FUNC_CALL UrlDecode expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2229);
match(input, Token.DOWN, null);
match(input,UrlDecode,FOLLOW_UrlDecode_in_functionCall2231);
pushFollow(FOLLOW_expression_in_functionCall2233);
expression89=expression();
state._fsp--;
match(input, Token.UP, null);
node = new UrlDecodeNode(line, handler, currentScope, expression89);
}
break;
case 61 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:374:6: ^( FUNC_CALL Uuid )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2244);
match(input, Token.DOWN, null);
match(input,Uuid,FOLLOW_Uuid_in_functionCall2246);
match(input, Token.UP, null);
node = new UuidNode(line, handler, currentScope);
}
break;
case 62 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:375:6: ^( FUNC_CALL Remove Identifier k= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2257);
match(input, Token.DOWN, null);
match(input,Remove,FOLLOW_Remove_in_functionCall2259);
Identifier90=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall2261);
pushFollow(FOLLOW_expression_in_functionCall2265);
k=expression();
state._fsp--;
match(input, Token.UP, null);
node = new RemoveNode(line, handler, currentScope, (Identifier90!=null?Identifier90.getText():null), k);
}
break;
case 63 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:376:6: ^( FUNC_CALL AsyncCall s= expression (p= expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2276);
match(input, Token.DOWN, null);
match(input,AsyncCall,FOLLOW_AsyncCall_in_functionCall2278);
pushFollow(FOLLOW_expression_in_functionCall2282);
s=expression();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:376:42: (p= expression )?
int alt29=2;
int LA29_0 = input.LA(1);
if ( (LA29_0==Add||LA29_0==And||LA29_0==Bool||LA29_0==Divide||LA29_0==Equals||(LA29_0 >= GT && LA29_0 <= GTEquals)||LA29_0==In||LA29_0==Integer||(LA29_0 >= LOOKUP && LA29_0 <= LTEquals)||LA29_0==Long||(LA29_0 >= Modulus && LA29_0 <= NEquals)||(LA29_0 >= Null && LA29_0 <= Number)||LA29_0==Or||LA29_0==Pow||LA29_0==RANGELOOKUP||LA29_0==SPARSE||LA29_0==Subtract||LA29_0==TERNARY||LA29_0==UNARY_MIN) ) {
alt29=1;
}
switch (alt29) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:376:42: p= expression
{
pushFollow(FOLLOW_expression_in_functionCall2286);
p=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new AsyncCallNode(line, handler, currentScope, s, p);
}
break;
case 64 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:377:6: ^( FUNC_CALL AsyncCallScript r= expression s= expression (p= expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2298);
match(input, Token.DOWN, null);
match(input,AsyncCallScript,FOLLOW_AsyncCallScript_in_functionCall2300);
pushFollow(FOLLOW_expression_in_functionCall2304);
r=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2308);
s=expression();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:377:61: (p= expression )?
int alt30=2;
int LA30_0 = input.LA(1);
if ( (LA30_0==Add||LA30_0==And||LA30_0==Bool||LA30_0==Divide||LA30_0==Equals||(LA30_0 >= GT && LA30_0 <= GTEquals)||LA30_0==In||LA30_0==Integer||(LA30_0 >= LOOKUP && LA30_0 <= LTEquals)||LA30_0==Long||(LA30_0 >= Modulus && LA30_0 <= NEquals)||(LA30_0 >= Null && LA30_0 <= Number)||LA30_0==Or||LA30_0==Pow||LA30_0==RANGELOOKUP||LA30_0==SPARSE||LA30_0==Subtract||LA30_0==TERNARY||LA30_0==UNARY_MIN) ) {
alt30=1;
}
switch (alt30) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:377:61: p= expression
{
pushFollow(FOLLOW_expression_in_functionCall2312);
p=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new AsyncCallScriptNode(line, handler, currentScope, r, s, p);
}
break;
case 65 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:378:6: ^( FUNC_CALL AsyncStatus expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2324);
match(input, Token.DOWN, null);
match(input,AsyncStatus,FOLLOW_AsyncStatus_in_functionCall2326);
pushFollow(FOLLOW_expression_in_functionCall2328);
expression91=expression();
state._fsp--;
match(input, Token.UP, null);
node = new AsyncStatusNode(line, handler, currentScope, expression91);
}
break;
case 66 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:379:6: ^( FUNC_CALL SuspendWait exprList )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2339);
match(input, Token.DOWN, null);
match(input,SuspendWait,FOLLOW_SuspendWait_in_functionCall2341);
pushFollow(FOLLOW_exprList_in_functionCall2343);
exprList92=exprList();
state._fsp--;
match(input, Token.UP, null);
node = new SuspendWaitNode(line, handler, currentScope, exprList92);
}
break;
case 67 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:380:6: ^( FUNC_CALL Wait d= expression (in= expression retry= expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2354);
match(input, Token.DOWN, null);
match(input,Wait,FOLLOW_Wait_in_functionCall2356);
pushFollow(FOLLOW_expression_in_functionCall2360);
d=expression();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:380:36: (in= expression retry= expression )?
int alt31=2;
int LA31_0 = input.LA(1);
if ( (LA31_0==Add||LA31_0==And||LA31_0==Bool||LA31_0==Divide||LA31_0==Equals||(LA31_0 >= GT && LA31_0 <= GTEquals)||LA31_0==In||LA31_0==Integer||(LA31_0 >= LOOKUP && LA31_0 <= LTEquals)||LA31_0==Long||(LA31_0 >= Modulus && LA31_0 <= NEquals)||(LA31_0 >= Null && LA31_0 <= Number)||LA31_0==Or||LA31_0==Pow||LA31_0==RANGELOOKUP||LA31_0==SPARSE||LA31_0==Subtract||LA31_0==TERNARY||LA31_0==UNARY_MIN) ) {
alt31=1;
}
switch (alt31) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:380:37: in= expression retry= expression
{
pushFollow(FOLLOW_expression_in_functionCall2365);
in=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2369);
retry=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new WaitNode(line, handler, currentScope, d, in, retry);
}
break;
case 68 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:381:6: ^( FUNC_CALL Signal d= expression v= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2382);
match(input, Token.DOWN, null);
match(input,Signal,FOLLOW_Signal_in_functionCall2384);
pushFollow(FOLLOW_expression_in_functionCall2388);
d=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2392);
v=expression();
state._fsp--;
match(input, Token.UP, null);
node = new SignalNode(line, handler, currentScope, d, v);
}
break;
case 69 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:382:6: ^( FUNC_CALL Chain s= expression (p= expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2403);
match(input, Token.DOWN, null);
match(input,Chain,FOLLOW_Chain_in_functionCall2405);
pushFollow(FOLLOW_expression_in_functionCall2409);
s=expression();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:382:38: (p= expression )?
int alt32=2;
int LA32_0 = input.LA(1);
if ( (LA32_0==Add||LA32_0==And||LA32_0==Bool||LA32_0==Divide||LA32_0==Equals||(LA32_0 >= GT && LA32_0 <= GTEquals)||LA32_0==In||LA32_0==Integer||(LA32_0 >= LOOKUP && LA32_0 <= LTEquals)||LA32_0==Long||(LA32_0 >= Modulus && LA32_0 <= NEquals)||(LA32_0 >= Null && LA32_0 <= Number)||LA32_0==Or||LA32_0==Pow||LA32_0==RANGELOOKUP||LA32_0==SPARSE||LA32_0==Subtract||LA32_0==TERNARY||LA32_0==UNARY_MIN) ) {
alt32=1;
}
switch (alt32) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:382:38: p= expression
{
pushFollow(FOLLOW_expression_in_functionCall2413);
p=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new ChainNode(line, handler, currentScope, s, p);
}
break;
case 70 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:383:6: ^( FUNC_CALL Sleep expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2425);
match(input, Token.DOWN, null);
match(input,Sleep,FOLLOW_Sleep_in_functionCall2427);
pushFollow(FOLLOW_expression_in_functionCall2429);
expression93=expression();
state._fsp--;
match(input, Token.UP, null);
node = new SleepNode(line, handler,currentScope, expression93);
}
break;
case 71 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:384:6: ^( FUNC_CALL Matches s= expression r= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2440);
match(input, Token.DOWN, null);
match(input,Matches,FOLLOW_Matches_in_functionCall2442);
pushFollow(FOLLOW_expression_in_functionCall2446);
s=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2450);
r=expression();
state._fsp--;
match(input, Token.UP, null);
node = new MatchesNode(line, handler, currentScope, s, r);
}
break;
case 72 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:385:6: ^( FUNC_CALL Cast a= expression b= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2461);
match(input, Token.DOWN, null);
match(input,Cast,FOLLOW_Cast_in_functionCall2463);
pushFollow(FOLLOW_expression_in_functionCall2467);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2471);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new CastNode(line, handler, currentScope, a, b, languageRegistry, namespaceStack.asPrefix());
}
break;
case 73 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:386:6: ^( FUNC_CALL Rand expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2482);
match(input, Token.DOWN, null);
match(input,Rand,FOLLOW_Rand_in_functionCall2484);
pushFollow(FOLLOW_expression_in_functionCall2486);
expression94=expression();
state._fsp--;
match(input, Token.UP, null);
node = new RandNode(line, handler, currentScope, expression94);
}
break;
case 74 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:387:6: ^( FUNC_CALL Round v= expression dp= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2497);
match(input, Token.DOWN, null);
match(input,Round,FOLLOW_Round_in_functionCall2499);
pushFollow(FOLLOW_expression_in_functionCall2503);
v=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2507);
dp=expression();
state._fsp--;
match(input, Token.UP, null);
node = new RoundNode(line, handler, currentScope, v, dp);
}
break;
case 75 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:388:6: ^( FUNC_CALL Lib expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2518);
match(input, Token.DOWN, null);
match(input,Lib,FOLLOW_Lib_in_functionCall2520);
pushFollow(FOLLOW_expression_in_functionCall2522);
expression95=expression();
state._fsp--;
match(input, Token.UP, null);
node = new LibNode(line, handler, currentScope, expression95);
}
break;
case 76 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:389:6: ^( FUNC_CALL Call a= expression b= expression c= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2533);
match(input, Token.DOWN, null);
match(input,Call,FOLLOW_Call_in_functionCall2535);
pushFollow(FOLLOW_expression_in_functionCall2539);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2543);
b=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2547);
c=expression();
state._fsp--;
match(input, Token.UP, null);
node = new CallNode(line, handler, currentScope, a, b, c);
}
break;
case 77 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:390:6: ^( FUNC_CALL New a= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2558);
match(input, Token.DOWN, null);
match(input,New,FOLLOW_New_in_functionCall2560);
pushFollow(FOLLOW_expression_in_functionCall2565);
a=expression();
state._fsp--;
match(input, Token.UP, null);
node = new NewNode(line, handler, currentScope, a, languageRegistry, namespaceStack.asPrefix());
}
break;
case 78 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:391:6: ^( FUNC_CALL GenSchema a= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2576);
match(input, Token.DOWN, null);
match(input,GenSchema,FOLLOW_GenSchema_in_functionCall2578);
pushFollow(FOLLOW_expression_in_functionCall2582);
a=expression();
state._fsp--;
match(input, Token.UP, null);
node = new GenSchemaNode(line, handler, currentScope, a, languageRegistry, namespaceStack.asPrefix());
}
break;
case 79 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:392:6: ^( FUNC_CALL GenStruct Identifier a= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2593);
match(input, Token.DOWN, null);
match(input,GenStruct,FOLLOW_GenStruct_in_functionCall2595);
Identifier96=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall2597);
pushFollow(FOLLOW_expression_in_functionCall2601);
a=expression();
state._fsp--;
match(input, Token.UP, null);
node = new GenStructNode(line, handler, currentScope, (Identifier96!=null?Identifier96.getText():null), a, languageRegistry, namespaceStack.asPrefix());
}
break;
case 80 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:393:6: ^( FUNC_CALL Template t= expression p= expression )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2612);
match(input, Token.DOWN, null);
match(input,Template,FOLLOW_Template_in_functionCall2614);
pushFollow(FOLLOW_expression_in_functionCall2618);
t=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2622);
p=expression();
state._fsp--;
match(input, Token.UP, null);
node = new TemplateNode(line, handler, currentScope, t, p);
}
break;
case 81 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:394:6: ^( FUNC_CALL Spawn p= expression (e= expression f= expression )? )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2633);
match(input, Token.DOWN, null);
match(input,Spawn,FOLLOW_Spawn_in_functionCall2635);
pushFollow(FOLLOW_expression_in_functionCall2639);
p=expression();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:394:37: (e= expression f= expression )?
int alt33=2;
int LA33_0 = input.LA(1);
if ( (LA33_0==Add||LA33_0==And||LA33_0==Bool||LA33_0==Divide||LA33_0==Equals||(LA33_0 >= GT && LA33_0 <= GTEquals)||LA33_0==In||LA33_0==Integer||(LA33_0 >= LOOKUP && LA33_0 <= LTEquals)||LA33_0==Long||(LA33_0 >= Modulus && LA33_0 <= NEquals)||(LA33_0 >= Null && LA33_0 <= Number)||LA33_0==Or||LA33_0==Pow||LA33_0==RANGELOOKUP||LA33_0==SPARSE||LA33_0==Subtract||LA33_0==TERNARY||LA33_0==UNARY_MIN) ) {
alt33=1;
}
switch (alt33) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:394:38: e= expression f= expression
{
pushFollow(FOLLOW_expression_in_functionCall2644);
e=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_functionCall2648);
f=expression();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new SpawnNode(line, handler, currentScope, p, e, f);
}
break;
case 82 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:395:6: ^( FUNC_CALL Defined Identifier )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2661);
match(input, Token.DOWN, null);
match(input,Defined,FOLLOW_Defined_in_functionCall2663);
Identifier97=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_functionCall2665);
match(input, Token.UP, null);
node = new DefinedNode(line, handler, currentScope, (Identifier97!=null?Identifier97.getText():null), namespaceStack.asPrefix()) ;
}
break;
case 83 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:396:6: ^( FUNC_CALL Defined lookup )
{
match(input,FUNC_CALL,FOLLOW_FUNC_CALL_in_functionCall2676);
match(input, Token.DOWN, null);
match(input,Defined,FOLLOW_Defined_in_functionCall2678);
pushFollow(FOLLOW_lookup_in_functionCall2680);
lookup98=lookup();
state._fsp--;
match(input, Token.UP, null);
node = new DefinedNode(line, handler, currentScope, lookup98, namespaceStack.asPrefix()) ;
}
break;
case 84 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:397:6: ^( KERNEL_CALL KernelIdentifier ( exprList )? )
{
match(input,KERNEL_CALL,FOLLOW_KERNEL_CALL_in_functionCall2691);
match(input, Token.DOWN, null);
KernelIdentifier99=(CommonTree)match(input,KernelIdentifier,FOLLOW_KernelIdentifier_in_functionCall2693);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:397:37: ( exprList )?
int alt34=2;
int LA34_0 = input.LA(1);
if ( (LA34_0==EXP_LIST) ) {
alt34=1;
}
switch (alt34) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:397:37: exprList
{
pushFollow(FOLLOW_exprList_in_functionCall2695);
exprList100=exprList();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new KernelCallNode(line, handler, currentScope, (KernelIdentifier99!=null?KernelIdentifier99.getText():null), exprList100);
}
break;
case 85 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:398:6: ^( QUALIFIED_FUNC_CALL DottedIdentifier ( exprList )? )
{
match(input,QUALIFIED_FUNC_CALL,FOLLOW_QUALIFIED_FUNC_CALL_in_functionCall2707);
match(input, Token.DOWN, null);
DottedIdentifier101=(CommonTree)match(input,DottedIdentifier,FOLLOW_DottedIdentifier_in_functionCall2709);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:398:45: ( exprList )?
int alt35=2;
int LA35_0 = input.LA(1);
if ( (LA35_0==EXP_LIST) ) {
alt35=1;
}
switch (alt35) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:398:45: exprList
{
pushFollow(FOLLOW_exprList_in_functionCall2711);
exprList102=exprList();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = new QualifiedFuncCallNode(line, handler, currentScope, (DottedIdentifier101!=null?DottedIdentifier101.getText():null),
exprList102, languageRegistry, importHandler, namespaceStack.asPrefix());
}
break;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "functionCall"
// $ANTLR start "ifStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:402:1: ifStatement returns [ReflexNode node] : ^( IF ( ^( EXP expression b1= block ) )+ ( ^( EXP b2= block ) )? ) ;
public final ReflexNode ifStatement() throws RecognitionException {
ReflexNode node = null;
ReflexNode b1 =null;
ReflexNode b2 =null;
ReflexNode expression103 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
IfNode ifNode = new IfNode(line, handler, currentScope);
node = ifNode;
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:409:3: ( ^( IF ( ^( EXP expression b1= block ) )+ ( ^( EXP b2= block ) )? ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:409:6: ^( IF ( ^( EXP expression b1= block ) )+ ( ^( EXP b2= block ) )? )
{
match(input,IF,FOLLOW_IF_in_ifStatement2740);
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:410:8: ( ^( EXP expression b1= block ) )+
int cnt37=0;
loop37:
while (true) {
int alt37=2;
int LA37_0 = input.LA(1);
if ( (LA37_0==EXP) ) {
int LA37_1 = input.LA(2);
if ( (LA37_1==DOWN) ) {
int LA37_3 = input.LA(3);
if ( (LA37_3==Add||LA37_3==And||LA37_3==Bool||LA37_3==Divide||LA37_3==Equals||(LA37_3 >= GT && LA37_3 <= GTEquals)||LA37_3==In||LA37_3==Integer||(LA37_3 >= LOOKUP && LA37_3 <= LTEquals)||LA37_3==Long||(LA37_3 >= Modulus && LA37_3 <= NEquals)||(LA37_3 >= Null && LA37_3 <= Number)||LA37_3==Or||LA37_3==Pow||LA37_3==RANGELOOKUP||LA37_3==SPARSE||LA37_3==Subtract||LA37_3==TERNARY||LA37_3==UNARY_MIN) ) {
alt37=1;
}
}
}
switch (alt37) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:410:9: ^( EXP expression b1= block )
{
match(input,EXP,FOLLOW_EXP_in_ifStatement2751);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_ifStatement2753);
expression103=expression();
state._fsp--;
pushFollow(FOLLOW_block_in_ifStatement2757);
b1=block();
state._fsp--;
match(input, Token.UP, null);
ifNode.addChoice(expression103,b1);
}
break;
default :
if ( cnt37 >= 1 ) break loop37;
EarlyExitException eee = new EarlyExitException(37, input);
throw eee;
}
cnt37++;
}
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:411:8: ( ^( EXP b2= block ) )?
int alt38=2;
int LA38_0 = input.LA(1);
if ( (LA38_0==EXP) ) {
alt38=1;
}
switch (alt38) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:411:9: ^( EXP b2= block )
{
match(input,EXP,FOLLOW_EXP_in_ifStatement2772);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_block_in_ifStatement2776);
b2=block();
state._fsp--;
match(input, Token.UP, null);
ifNode.addChoice(new AtomNode(line, handler, currentScope, true),b2);
}
break;
}
match(input, Token.UP, null);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "ifStatement"
// $ANTLR start "forStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:415:1: forStatement returns [ReflexNode node] : ( ^( FORLIST Identifier a= expression block ) | ^( FORTO Identifier a= expression b= expression block ) );
public final ReflexNode forStatement() throws RecognitionException {
ReflexNode node = null;
CommonTree Identifier104=null;
CommonTree Identifier106=null;
ReflexNode a =null;
ReflexNode b =null;
ReflexNode block105 =null;
ReflexNode block107 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:420:3: ( ^( FORLIST Identifier a= expression block ) | ^( FORTO Identifier a= expression b= expression block ) )
int alt39=2;
int LA39_0 = input.LA(1);
if ( (LA39_0==FORLIST) ) {
alt39=1;
}
else if ( (LA39_0==FORTO) ) {
alt39=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 39, 0, input);
throw nvae;
}
switch (alt39) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:421:6: ^( FORLIST Identifier a= expression block )
{
match(input,FORLIST,FOLLOW_FORLIST_in_forStatement2826);
match(input, Token.DOWN, null);
Identifier104=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_forStatement2828);
pushFollow(FOLLOW_expression_in_forStatement2832);
a=expression();
state._fsp--;
pushFollow(FOLLOW_block_in_forStatement2834);
block105=block();
state._fsp--;
match(input, Token.UP, null);
node = new ForInStatementNode(line, handler, currentScope, (Identifier104!=null?Identifier104.getText():null), a, block105);
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:422:6: ^( FORTO Identifier a= expression b= expression block )
{
match(input,FORTO,FOLLOW_FORTO_in_forStatement2845);
match(input, Token.DOWN, null);
Identifier106=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_forStatement2847);
pushFollow(FOLLOW_expression_in_forStatement2851);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_forStatement2855);
b=expression();
state._fsp--;
pushFollow(FOLLOW_block_in_forStatement2857);
block107=block();
state._fsp--;
match(input, Token.UP, null);
node = new ForStatementNode(line, handler, currentScope, (Identifier106!=null?Identifier106.getText():null), a, b, block107);
}
break;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "forStatement"
// $ANTLR start "pforStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:425:1: pforStatement returns [ReflexNode node] : ( ^( PFORLIST Identifier a= expression block ) | ^( PFORTO Identifier a= expression b= expression block ) );
public final ReflexNode pforStatement() throws RecognitionException {
ReflexNode node = null;
CommonTree Identifier108=null;
CommonTree Identifier110=null;
ReflexNode a =null;
ReflexNode b =null;
ReflexNode block109 =null;
ReflexNode block111 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:430:3: ( ^( PFORLIST Identifier a= expression block ) | ^( PFORTO Identifier a= expression b= expression block ) )
int alt40=2;
int LA40_0 = input.LA(1);
if ( (LA40_0==PFORLIST) ) {
alt40=1;
}
else if ( (LA40_0==PFORTO) ) {
alt40=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 40, 0, input);
throw nvae;
}
switch (alt40) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:431:6: ^( PFORLIST Identifier a= expression block )
{
match(input,PFORLIST,FOLLOW_PFORLIST_in_pforStatement2888);
match(input, Token.DOWN, null);
Identifier108=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_pforStatement2890);
pushFollow(FOLLOW_expression_in_pforStatement2894);
a=expression();
state._fsp--;
pushFollow(FOLLOW_block_in_pforStatement2896);
block109=block();
state._fsp--;
match(input, Token.UP, null);
node = new PForInStatementNode(line, handler, currentScope, (Identifier108!=null?Identifier108.getText():null), a, block109);
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:432:6: ^( PFORTO Identifier a= expression b= expression block )
{
match(input,PFORTO,FOLLOW_PFORTO_in_pforStatement2907);
match(input, Token.DOWN, null);
Identifier110=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_pforStatement2909);
pushFollow(FOLLOW_expression_in_pforStatement2913);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_pforStatement2917);
b=expression();
state._fsp--;
pushFollow(FOLLOW_block_in_pforStatement2919);
block111=block();
state._fsp--;
match(input, Token.UP, null);
node = new PForStatementNode(line, handler, currentScope, (Identifier110!=null?Identifier110.getText():null), a, b, block111);
}
break;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "pforStatement"
// $ANTLR start "whileStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:435:1: whileStatement returns [ReflexNode node] : ^( While expression block ) ;
public final ReflexNode whileStatement() throws RecognitionException {
ReflexNode node = null;
ReflexNode expression112 =null;
ReflexNode block113 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:440:3: ( ^( While expression block ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:440:6: ^( While expression block )
{
match(input,While,FOLLOW_While_in_whileStatement2946);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_whileStatement2948);
expression112=expression();
state._fsp--;
pushFollow(FOLLOW_block_in_whileStatement2950);
block113=block();
state._fsp--;
match(input, Token.UP, null);
node = new WhileStatementNode(line, handler, currentScope, expression112, block113);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "whileStatement"
// $ANTLR start "guardedStatement"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:443:1: guardedStatement returns [ReflexNode node] : ^( Try g= block Identifier c= block ) ;
public final ReflexNode guardedStatement() throws RecognitionException {
ReflexNode node = null;
CommonTree Identifier114=null;
ReflexNode g =null;
ReflexNode c =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:448:3: ( ^( Try g= block Identifier c= block ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:448:5: ^( Try g= block Identifier c= block )
{
match(input,Try,FOLLOW_Try_in_guardedStatement2976);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_block_in_guardedStatement2980);
g=block();
state._fsp--;
Identifier114=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_guardedStatement2982);
pushFollow(FOLLOW_block_in_guardedStatement2986);
c=block();
state._fsp--;
match(input, Token.UP, null);
node = new GuardedNode(line, handler, currentScope, g, (Identifier114!=null?Identifier114.getText():null), c);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "guardedStatement"
// $ANTLR start "sparsesep"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:451:1: sparsesep : '-' ;
public final void sparsesep() throws RecognitionException {
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:451:10: ( '-' )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:452:4: '-'
{
match(input,Subtract,FOLLOW_Subtract_in_sparsesep3002);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
}
// $ANTLR end "sparsesep"
// $ANTLR start "sparsematrix"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:454:1: sparsematrix returns [int dim] : ^( SPARSE ( sparsesep )+ ) ;
public final int sparsematrix() throws RecognitionException {
int dim = 0;
dim = 1;
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:458:4: ( ^( SPARSE ( sparsesep )+ ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:458:6: ^( SPARSE ( sparsesep )+ )
{
match(input,SPARSE,FOLLOW_SPARSE_in_sparsematrix3023);
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:458:15: ( sparsesep )+
int cnt41=0;
loop41:
while (true) {
int alt41=2;
int LA41_0 = input.LA(1);
if ( (LA41_0==Subtract) ) {
alt41=1;
}
switch (alt41) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:458:16: sparsesep
{
pushFollow(FOLLOW_sparsesep_in_sparsematrix3026);
sparsesep();
state._fsp--;
dim++;
}
break;
default :
if ( cnt41 >= 1 ) break loop41;
EarlyExitException eee = new EarlyExitException(41, input);
throw eee;
}
cnt41++;
}
match(input, Token.UP, null);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return dim;
}
// $ANTLR end "sparsematrix"
// $ANTLR start "idList"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:461:1: idList returns [java.util.List i] : ^( ID_LIST ( Identifier )+ ) ;
public final java.util.List idList() throws RecognitionException {
java.util.List i = null;
CommonTree Identifier115=null;
i = new java.util.ArrayList();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:465:3: ( ^( ID_LIST ( Identifier )+ ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:465:6: ^( ID_LIST ( Identifier )+ )
{
match(input,ID_LIST,FOLLOW_ID_LIST_in_idList3057);
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:465:16: ( Identifier )+
int cnt42=0;
loop42:
while (true) {
int alt42=2;
int LA42_0 = input.LA(1);
if ( (LA42_0==Identifier) ) {
alt42=1;
}
switch (alt42) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:465:17: Identifier
{
Identifier115=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_idList3060);
i.add((Identifier115!=null?Identifier115.getText():null));
}
break;
default :
if ( cnt42 >= 1 ) break loop42;
EarlyExitException eee = new EarlyExitException(42, input);
throw eee;
}
cnt42++;
}
match(input, Token.UP, null);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return i;
}
// $ANTLR end "idList"
// $ANTLR start "exprList"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:468:1: exprList returns [java.util.List e] : ^( EXP_LIST ( expression )+ ) ;
public final java.util.List exprList() throws RecognitionException {
java.util.List e = null;
ReflexNode expression116 =null;
e = new java.util.ArrayList();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:472:3: ( ^( EXP_LIST ( expression )+ ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:472:6: ^( EXP_LIST ( expression )+ )
{
match(input,EXP_LIST,FOLLOW_EXP_LIST_in_exprList3089);
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:472:17: ( expression )+
int cnt43=0;
loop43:
while (true) {
int alt43=2;
int LA43_0 = input.LA(1);
if ( (LA43_0==Add||LA43_0==And||LA43_0==Bool||LA43_0==Divide||LA43_0==Equals||(LA43_0 >= GT && LA43_0 <= GTEquals)||LA43_0==In||LA43_0==Integer||(LA43_0 >= LOOKUP && LA43_0 <= LTEquals)||LA43_0==Long||(LA43_0 >= Modulus && LA43_0 <= NEquals)||(LA43_0 >= Null && LA43_0 <= Number)||LA43_0==Or||LA43_0==Pow||LA43_0==RANGELOOKUP||LA43_0==SPARSE||LA43_0==Subtract||LA43_0==TERNARY||LA43_0==UNARY_MIN) ) {
alt43=1;
}
switch (alt43) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:472:18: expression
{
pushFollow(FOLLOW_expression_in_exprList3092);
expression116=expression();
state._fsp--;
e.add(expression116);
}
break;
default :
if ( cnt43 >= 1 ) break loop43;
EarlyExitException eee = new EarlyExitException(43, input);
throw eee;
}
cnt43++;
}
match(input, Token.UP, null);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return e;
}
// $ANTLR end "exprList"
// $ANTLR start "expression"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:475:1: expression returns [ReflexNode node] : ( ^( TERNARY a= expression b= expression c= expression ) | ^( In a= expression b= expression ) | ^( '||' a= expression b= expression ) | ^( '&&' a= expression b= expression ) | ^( '==' a= expression b= expression ) | ^( '!=' a= expression b= expression ) | ^( '>=' a= expression b= expression ) | ^( '<=' a= expression b= expression ) | ^( '>' a= expression b= expression ) | ^( '<' a= expression b= expression ) | ^( '+' a= expression b= expression ) | ^( '-' a= expression b= expression ) | ^( '*' a= expression b= expression ) | ^( '/' a= expression b= expression ) | ^( '%' a= expression b= expression ) | ^( '^' a= expression b= expression ) | ^( UNARY_MIN a= expression ) | ^( NEGATE a= expression ) | Number | Integer | Long | Bool | Null | sparsematrix | lookup );
public final ReflexNode expression() throws RecognitionException {
ReflexNode node = null;
CommonTree Number117=null;
CommonTree Integer118=null;
CommonTree Long119=null;
CommonTree Bool120=null;
ReflexNode a =null;
ReflexNode b =null;
ReflexNode c =null;
int sparsematrix121 =0;
ReflexNode lookup122 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:480:3: ( ^( TERNARY a= expression b= expression c= expression ) | ^( In a= expression b= expression ) | ^( '||' a= expression b= expression ) | ^( '&&' a= expression b= expression ) | ^( '==' a= expression b= expression ) | ^( '!=' a= expression b= expression ) | ^( '>=' a= expression b= expression ) | ^( '<=' a= expression b= expression ) | ^( '>' a= expression b= expression ) | ^( '<' a= expression b= expression ) | ^( '+' a= expression b= expression ) | ^( '-' a= expression b= expression ) | ^( '*' a= expression b= expression ) | ^( '/' a= expression b= expression ) | ^( '%' a= expression b= expression ) | ^( '^' a= expression b= expression ) | ^( UNARY_MIN a= expression ) | ^( NEGATE a= expression ) | Number | Integer | Long | Bool | Null | sparsematrix | lookup )
int alt44=25;
switch ( input.LA(1) ) {
case TERNARY:
{
alt44=1;
}
break;
case In:
{
alt44=2;
}
break;
case Or:
{
alt44=3;
}
break;
case And:
{
alt44=4;
}
break;
case Equals:
{
alt44=5;
}
break;
case NEquals:
{
alt44=6;
}
break;
case GTEquals:
{
alt44=7;
}
break;
case LTEquals:
{
alt44=8;
}
break;
case GT:
{
alt44=9;
}
break;
case LT:
{
alt44=10;
}
break;
case Add:
{
alt44=11;
}
break;
case Subtract:
{
alt44=12;
}
break;
case Multiply:
{
alt44=13;
}
break;
case Divide:
{
alt44=14;
}
break;
case Modulus:
{
alt44=15;
}
break;
case Pow:
{
alt44=16;
}
break;
case UNARY_MIN:
{
alt44=17;
}
break;
case NEGATE:
{
alt44=18;
}
break;
case Number:
{
alt44=19;
}
break;
case Integer:
{
alt44=20;
}
break;
case Long:
{
alt44=21;
}
break;
case Bool:
{
alt44=22;
}
break;
case Null:
{
alt44=23;
}
break;
case SPARSE:
{
alt44=24;
}
break;
case LOOKUP:
case RANGELOOKUP:
{
alt44=25;
}
break;
default:
NoViableAltException nvae =
new NoViableAltException("", 44, 0, input);
throw nvae;
}
switch (alt44) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:480:6: ^( TERNARY a= expression b= expression c= expression )
{
match(input,TERNARY,FOLLOW_TERNARY_in_expression3121);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3125);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3129);
b=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3133);
c=expression();
state._fsp--;
match(input, Token.UP, null);
node = new TernaryNode(line, handler, currentScope, a, b, c);
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:481:6: ^( In a= expression b= expression )
{
match(input,In,FOLLOW_In_in_expression3144);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3148);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3152);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new InNode(line, handler, currentScope, a, b);
}
break;
case 3 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:482:6: ^( '||' a= expression b= expression )
{
match(input,Or,FOLLOW_Or_in_expression3163);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3167);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3171);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new OrNode(line, handler, currentScope, a, b);
}
break;
case 4 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:483:6: ^( '&&' a= expression b= expression )
{
match(input,And,FOLLOW_And_in_expression3182);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3186);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3190);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new AndNode(line, handler, currentScope, a, b);
}
break;
case 5 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:484:6: ^( '==' a= expression b= expression )
{
match(input,Equals,FOLLOW_Equals_in_expression3201);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3205);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3209);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new EqualsNode(line, handler, currentScope, a, b);
}
break;
case 6 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:485:6: ^( '!=' a= expression b= expression )
{
match(input,NEquals,FOLLOW_NEquals_in_expression3220);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3224);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3228);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new NotEqualsNode(line,handler, currentScope, a, b);
}
break;
case 7 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:486:6: ^( '>=' a= expression b= expression )
{
match(input,GTEquals,FOLLOW_GTEquals_in_expression3239);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3243);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3247);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new GTEqualsNode(line, handler, currentScope, a, b);
}
break;
case 8 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:487:6: ^( '<=' a= expression b= expression )
{
match(input,LTEquals,FOLLOW_LTEquals_in_expression3258);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3262);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3266);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new LTEqualsNode(line, handler, currentScope, a, b);
}
break;
case 9 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:488:6: ^( '>' a= expression b= expression )
{
match(input,GT,FOLLOW_GT_in_expression3277);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3281);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3285);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new GTNode(line, handler, currentScope, a, b);
}
break;
case 10 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:489:6: ^( '<' a= expression b= expression )
{
match(input,LT,FOLLOW_LT_in_expression3296);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3300);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3304);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new LTNode(line, handler, currentScope, a, b);
}
break;
case 11 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:490:6: ^( '+' a= expression b= expression )
{
match(input,Add,FOLLOW_Add_in_expression3315);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3319);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3323);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new AddNode(line, handler,currentScope, a, b);
}
break;
case 12 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:491:6: ^( '-' a= expression b= expression )
{
match(input,Subtract,FOLLOW_Subtract_in_expression3334);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3338);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3342);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new SubNode(line, handler, currentScope, a, b);
}
break;
case 13 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:492:6: ^( '*' a= expression b= expression )
{
match(input,Multiply,FOLLOW_Multiply_in_expression3353);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3357);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3361);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new MulNode(line, handler, currentScope, a, b);
}
break;
case 14 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:493:6: ^( '/' a= expression b= expression )
{
match(input,Divide,FOLLOW_Divide_in_expression3372);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3376);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3380);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new DivNode(line, handler, currentScope, a, b);
}
break;
case 15 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:494:6: ^( '%' a= expression b= expression )
{
match(input,Modulus,FOLLOW_Modulus_in_expression3391);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3395);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3399);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new ModNode(line, handler, currentScope, a, b);
}
break;
case 16 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:495:6: ^( '^' a= expression b= expression )
{
match(input,Pow,FOLLOW_Pow_in_expression3410);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3414);
a=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_expression3418);
b=expression();
state._fsp--;
match(input, Token.UP, null);
node = new PowNode(line, handler, currentScope, a, b);
}
break;
case 17 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:496:6: ^( UNARY_MIN a= expression )
{
match(input,UNARY_MIN,FOLLOW_UNARY_MIN_in_expression3429);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3433);
a=expression();
state._fsp--;
match(input, Token.UP, null);
node = new UnaryMinusNode(line, handler, currentScope, a);
}
break;
case 18 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:497:6: ^( NEGATE a= expression )
{
match(input,NEGATE,FOLLOW_NEGATE_in_expression3444);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_expression3448);
a=expression();
state._fsp--;
match(input, Token.UP, null);
node = new NegateNode(line, handler, currentScope, a);
}
break;
case 19 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:498:6: Number
{
Number117=(CommonTree)match(input,Number,FOLLOW_Number_in_expression3458);
node = new AtomNode(line, handler, currentScope, new BigDecimal((Number117!=null?Number117.getText():null), MathContext.DECIMAL128));
}
break;
case 20 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:499:6: Integer
{
Integer118=(CommonTree)match(input,Integer,FOLLOW_Integer_in_expression3467);
node = AtomNode.getIntegerAtom(line, handler, currentScope, (Integer118!=null?Integer118.getText():null));
}
break;
case 21 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:500:6: Long
{
Long119=(CommonTree)match(input,Long,FOLLOW_Long_in_expression3476);
node = new AtomNode(line, handler, currentScope, java.lang.Long.parseLong((Long119!=null?Long119.getText():null)));
}
break;
case 22 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:501:6: Bool
{
Bool120=(CommonTree)match(input,Bool,FOLLOW_Bool_in_expression3485);
node = new AtomNode(line, handler, currentScope, Boolean.parseBoolean((Bool120!=null?Bool120.getText():null)));
}
break;
case 23 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:502:6: Null
{
match(input,Null,FOLLOW_Null_in_expression3494);
node = new AtomNode(line, handler, currentScope);
}
break;
case 24 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:503:6: sparsematrix
{
pushFollow(FOLLOW_sparsematrix_in_expression3503);
sparsematrix121=sparsematrix();
state._fsp--;
node = new AtomNode(line, handler, currentScope, new MatrixDim(sparsematrix121));
}
break;
case 25 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:504:6: lookup
{
pushFollow(FOLLOW_lookup_in_expression3512);
lookup122=lookup();
state._fsp--;
node = lookup122;
}
break;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "expression"
// $ANTLR start "list"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:508:1: list returns [ReflexNode node] : ^( LIST ( exprList )? ) ;
public final ReflexNode list() throws RecognitionException {
ReflexNode node = null;
java.util.List exprList123 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:513:3: ( ^( LIST ( exprList )? ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:513:5: ^( LIST ( exprList )? )
{
match(input,LIST,FOLLOW_LIST_in_list3538);
if ( input.LA(1)==Token.DOWN ) {
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:513:12: ( exprList )?
int alt45=2;
int LA45_0 = input.LA(1);
if ( (LA45_0==EXP_LIST) ) {
alt45=1;
}
switch (alt45) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:513:12: exprList
{
pushFollow(FOLLOW_exprList_in_list3540);
exprList123=exprList();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
}
node = new ListNode(line, handler, currentScope, exprList123);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "list"
// $ANTLR start "mapdef"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:516:1: mapdef returns [ReflexNode node] : ^( MAPDEF ( keyValList )? ) ;
public final ReflexNode mapdef() throws RecognitionException {
ReflexNode node = null;
java.util.List keyValList124 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:521:3: ( ^( MAPDEF ( keyValList )? ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:521:5: ^( MAPDEF ( keyValList )? )
{
match(input,MAPDEF,FOLLOW_MAPDEF_in_mapdef3567);
if ( input.LA(1)==Token.DOWN ) {
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:521:14: ( keyValList )?
int alt46=2;
int LA46_0 = input.LA(1);
if ( (LA46_0==KEYVAL_LIST) ) {
alt46=1;
}
switch (alt46) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:521:14: keyValList
{
pushFollow(FOLLOW_keyValList_in_mapdef3569);
keyValList124=keyValList();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
}
node = new MapNode(line, handler,currentScope, keyValList124);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "mapdef"
// $ANTLR start "jarUriList"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:524:1: jarUriList returns [java.util.List jarUris] : ^( JARURI_LIST ( jarUri )+ ) ;
public final java.util.List jarUriList() throws RecognitionException {
java.util.List jarUris = null;
String jarUri125 =null;
jarUris = new java.util.ArrayList();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:528:3: ( ^( JARURI_LIST ( jarUri )+ ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:528:6: ^( JARURI_LIST ( jarUri )+ )
{
match(input,JARURI_LIST,FOLLOW_JARURI_LIST_in_jarUriList3597);
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:528:20: ( jarUri )+
int cnt47=0;
loop47:
while (true) {
int alt47=2;
int LA47_0 = input.LA(1);
if ( (LA47_0==JARURI) ) {
alt47=1;
}
switch (alt47) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:528:21: jarUri
{
pushFollow(FOLLOW_jarUri_in_jarUriList3600);
jarUri125=jarUri();
state._fsp--;
jarUris.add(jarUri125);
}
break;
default :
if ( cnt47 >= 1 ) break loop47;
EarlyExitException eee = new EarlyExitException(47, input);
throw eee;
}
cnt47++;
}
match(input, Token.UP, null);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return jarUris;
}
// $ANTLR end "jarUriList"
// $ANTLR start "jarUri"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:531:1: jarUri returns [String uri] : ^( JARURI (j= String |j= QuotedString ) ) ;
public final String jarUri() throws RecognitionException {
String uri = null;
CommonTree j=null;
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:532:3: ( ^( JARURI (j= String |j= QuotedString ) ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:532:6: ^( JARURI (j= String |j= QuotedString ) )
{
match(input,JARURI,FOLLOW_JARURI_in_jarUri3624);
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:532:15: (j= String |j= QuotedString )
int alt48=2;
int LA48_0 = input.LA(1);
if ( (LA48_0==String) ) {
alt48=1;
}
else if ( (LA48_0==QuotedString) ) {
alt48=2;
}
else {
NoViableAltException nvae =
new NoViableAltException("", 48, 0, input);
throw nvae;
}
switch (alt48) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:532:16: j= String
{
j=(CommonTree)match(input,String,FOLLOW_String_in_jarUri3629);
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:532:27: j= QuotedString
{
j=(CommonTree)match(input,QuotedString,FOLLOW_QuotedString_in_jarUri3635);
}
break;
}
match(input, Token.UP, null);
uri = (j!=null?j.getText():null);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return uri;
}
// $ANTLR end "jarUri"
// $ANTLR start "keyValList"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:535:1: keyValList returns [java.util.List e] : ^( KEYVAL_LIST ( keyval )+ ) ;
public final java.util.List keyValList() throws RecognitionException {
java.util.List e = null;
ReflexNode keyval126 =null;
e = new java.util.ArrayList();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:539:3: ( ^( KEYVAL_LIST ( keyval )+ ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:539:6: ^( KEYVAL_LIST ( keyval )+ )
{
match(input,KEYVAL_LIST,FOLLOW_KEYVAL_LIST_in_keyValList3663);
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:539:20: ( keyval )+
int cnt49=0;
loop49:
while (true) {
int alt49=2;
int LA49_0 = input.LA(1);
if ( (LA49_0==KEYVAL) ) {
alt49=1;
}
switch (alt49) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:539:21: keyval
{
pushFollow(FOLLOW_keyval_in_keyValList3666);
keyval126=keyval();
state._fsp--;
e.add(keyval126);
}
break;
default :
if ( cnt49 >= 1 ) break loop49;
EarlyExitException eee = new EarlyExitException(49, input);
throw eee;
}
cnt49++;
}
match(input, Token.UP, null);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return e;
}
// $ANTLR end "keyValList"
// $ANTLR start "keyval"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:542:1: keyval returns [ReflexNode node] : ^( KEYVAL k= expression v= expression ) ;
public final ReflexNode keyval() throws RecognitionException {
ReflexNode node = null;
ReflexNode k =null;
ReflexNode v =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:547:3: ( ^( KEYVAL k= expression v= expression ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:547:6: ^( KEYVAL k= expression v= expression )
{
match(input,KEYVAL,FOLLOW_KEYVAL_in_keyval3695);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_keyval3699);
k=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_keyval3703);
v=expression();
state._fsp--;
match(input, Token.UP, null);
node = new KeyValNode(line, handler, currentScope, k, v);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "keyval"
// $ANTLR start "lookup"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:550:1: lookup returns [ReflexNode node] : ( ^( LOOKUP functionCall (i= indexes )? ) | ^( LOOKUP PropertyPlaceholder ) | ^( RANGELOOKUP Identifier rangeindex ) | ^( RANGELOOKUP DottedIdentifier rangeindex ) | ^( LOOKUP list (i= indexes )? ) | ^( LOOKUP mapdef (i= indexes )? ) | ^( LOOKUP expression (i= indexes )? ) | ^( LOOKUP DottedIdentifier (x= indexes )? ) | ^( LOOKUP Identifier (x= indexes )? ) | ^( LOOKUP String (x= indexes )? ) | ^( LOOKUP QuotedString (x= indexes )? ) );
public final ReflexNode lookup() throws RecognitionException {
ReflexNode node = null;
CommonTree PropertyPlaceholder128=null;
CommonTree Identifier129=null;
CommonTree DottedIdentifier131=null;
CommonTree DottedIdentifier136=null;
CommonTree Identifier137=null;
CommonTree String138=null;
CommonTree QuotedString139=null;
java.util.List> i =null;
java.util.List> x =null;
ReflexNode functionCall127 =null;
TreeRuleReturnScope rangeindex130 =null;
TreeRuleReturnScope rangeindex132 =null;
ReflexNode list133 =null;
ReflexNode mapdef134 =null;
ReflexNode expression135 =null;
CommonTree ahead = (CommonTree) input.LT(1);
int line = ahead.getToken().getLine();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:555:3: ( ^( LOOKUP functionCall (i= indexes )? ) | ^( LOOKUP PropertyPlaceholder ) | ^( RANGELOOKUP Identifier rangeindex ) | ^( RANGELOOKUP DottedIdentifier rangeindex ) | ^( LOOKUP list (i= indexes )? ) | ^( LOOKUP mapdef (i= indexes )? ) | ^( LOOKUP expression (i= indexes )? ) | ^( LOOKUP DottedIdentifier (x= indexes )? ) | ^( LOOKUP Identifier (x= indexes )? ) | ^( LOOKUP String (x= indexes )? ) | ^( LOOKUP QuotedString (x= indexes )? ) )
int alt58=11;
int LA58_0 = input.LA(1);
if ( (LA58_0==LOOKUP) ) {
int LA58_1 = input.LA(2);
if ( (LA58_1==DOWN) ) {
switch ( input.LA(3) ) {
case PropertyPlaceholder:
{
alt58=2;
}
break;
case DottedIdentifier:
{
alt58=8;
}
break;
case Identifier:
{
alt58=9;
}
break;
case String:
{
alt58=10;
}
break;
case QuotedString:
{
alt58=11;
}
break;
case FUNC_CALL:
case KERNEL_CALL:
case QUALIFIED_FUNC_CALL:
{
alt58=1;
}
break;
case LIST:
{
alt58=5;
}
break;
case MAPDEF:
{
alt58=6;
}
break;
case Add:
case And:
case Bool:
case Divide:
case Equals:
case GT:
case GTEquals:
case In:
case Integer:
case LOOKUP:
case LT:
case LTEquals:
case Long:
case Modulus:
case Multiply:
case NEGATE:
case NEquals:
case Null:
case Number:
case Or:
case Pow:
case RANGELOOKUP:
case SPARSE:
case Subtract:
case TERNARY:
case UNARY_MIN:
{
alt58=7;
}
break;
default:
int nvaeMark = input.mark();
try {
for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) {
input.consume();
}
NoViableAltException nvae =
new NoViableAltException("", 58, 3, input);
throw nvae;
} finally {
input.rewind(nvaeMark);
}
}
}
else {
int nvaeMark = input.mark();
try {
input.consume();
NoViableAltException nvae =
new NoViableAltException("", 58, 1, input);
throw nvae;
} finally {
input.rewind(nvaeMark);
}
}
}
else if ( (LA58_0==RANGELOOKUP) ) {
int LA58_2 = input.LA(2);
if ( (LA58_2==DOWN) ) {
int LA58_4 = input.LA(3);
if ( (LA58_4==Identifier) ) {
alt58=3;
}
else if ( (LA58_4==DottedIdentifier) ) {
alt58=4;
}
else {
int nvaeMark = input.mark();
try {
for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) {
input.consume();
}
NoViableAltException nvae =
new NoViableAltException("", 58, 4, input);
throw nvae;
} finally {
input.rewind(nvaeMark);
}
}
}
else {
int nvaeMark = input.mark();
try {
input.consume();
NoViableAltException nvae =
new NoViableAltException("", 58, 2, input);
throw nvae;
} finally {
input.rewind(nvaeMark);
}
}
}
else {
NoViableAltException nvae =
new NoViableAltException("", 58, 0, input);
throw nvae;
}
switch (alt58) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:555:6: ^( LOOKUP functionCall (i= indexes )? )
{
match(input,LOOKUP,FOLLOW_LOOKUP_in_lookup3730);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_functionCall_in_lookup3732);
functionCall127=functionCall();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:555:29: (i= indexes )?
int alt50=2;
int LA50_0 = input.LA(1);
if ( (LA50_0==INDEXES) ) {
alt50=1;
}
switch (alt50) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:555:29: i= indexes
{
pushFollow(FOLLOW_indexes_in_lookup3736);
i=indexes();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = i != null ? new LookupNode(line, handler, currentScope, functionCall127, i) : functionCall127;
}
break;
case 2 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:556:6: ^( LOOKUP PropertyPlaceholder )
{
match(input,LOOKUP,FOLLOW_LOOKUP_in_lookup3748);
match(input, Token.DOWN, null);
PropertyPlaceholder128=(CommonTree)match(input,PropertyPlaceholder,FOLLOW_PropertyPlaceholder_in_lookup3750);
match(input, Token.UP, null);
node = new PropertyPlaceholderNode(line, handler, currentScope, (PropertyPlaceholder128!=null?PropertyPlaceholder128.getText():null));
}
break;
case 3 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:557:6: ^( RANGELOOKUP Identifier rangeindex )
{
match(input,RANGELOOKUP,FOLLOW_RANGELOOKUP_in_lookup3762);
match(input, Token.DOWN, null);
Identifier129=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_lookup3764);
pushFollow(FOLLOW_rangeindex_in_lookup3766);
rangeindex130=rangeindex();
state._fsp--;
match(input, Token.UP, null);
node = new RangeLookupNode(line, handler, currentScope, new IdentifierNode(line, handler, currentScope, (Identifier129!=null?Identifier129.getText():null), namespaceStack.asPrefix()), (rangeindex130!=null?((ReflexTreeWalker.rangeindex_return)rangeindex130).ste:null), (rangeindex130!=null?((ReflexTreeWalker.rangeindex_return)rangeindex130).ed:null));
}
break;
case 4 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:558:6: ^( RANGELOOKUP DottedIdentifier rangeindex )
{
match(input,RANGELOOKUP,FOLLOW_RANGELOOKUP_in_lookup3777);
match(input, Token.DOWN, null);
DottedIdentifier131=(CommonTree)match(input,DottedIdentifier,FOLLOW_DottedIdentifier_in_lookup3779);
pushFollow(FOLLOW_rangeindex_in_lookup3781);
rangeindex132=rangeindex();
state._fsp--;
match(input, Token.UP, null);
node = new RangeLookupNode(line, handler, currentScope, new IdentifierNode(line, handler, currentScope, (DottedIdentifier131!=null?DottedIdentifier131.getText():null), namespaceStack.asPrefix()), (rangeindex132!=null?((ReflexTreeWalker.rangeindex_return)rangeindex132).ste:null), (rangeindex132!=null?((ReflexTreeWalker.rangeindex_return)rangeindex132).ed:null));
}
break;
case 5 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:559:6: ^( LOOKUP list (i= indexes )? )
{
match(input,LOOKUP,FOLLOW_LOOKUP_in_lookup3792);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_list_in_lookup3794);
list133=list();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:559:21: (i= indexes )?
int alt51=2;
int LA51_0 = input.LA(1);
if ( (LA51_0==INDEXES) ) {
alt51=1;
}
switch (alt51) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:559:21: i= indexes
{
pushFollow(FOLLOW_indexes_in_lookup3798);
i=indexes();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = i != null ? new LookupNode(line, handler, currentScope, list133, i) : list133;
}
break;
case 6 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:560:6: ^( LOOKUP mapdef (i= indexes )? )
{
match(input,LOOKUP,FOLLOW_LOOKUP_in_lookup3810);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_mapdef_in_lookup3812);
mapdef134=mapdef();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:560:23: (i= indexes )?
int alt52=2;
int LA52_0 = input.LA(1);
if ( (LA52_0==INDEXES) ) {
alt52=1;
}
switch (alt52) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:560:23: i= indexes
{
pushFollow(FOLLOW_indexes_in_lookup3816);
i=indexes();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = i != null ? new LookupNode(line, handler, currentScope, mapdef134, i) : mapdef134;
}
break;
case 7 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:561:6: ^( LOOKUP expression (i= indexes )? )
{
match(input,LOOKUP,FOLLOW_LOOKUP_in_lookup3828);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_lookup3830);
expression135=expression();
state._fsp--;
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:561:27: (i= indexes )?
int alt53=2;
int LA53_0 = input.LA(1);
if ( (LA53_0==INDEXES) ) {
alt53=1;
}
switch (alt53) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:561:27: i= indexes
{
pushFollow(FOLLOW_indexes_in_lookup3834);
i=indexes();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = i != null ? new LookupNode(line, handler, currentScope, expression135, i) : expression135;
}
break;
case 8 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:562:6: ^( LOOKUP DottedIdentifier (x= indexes )? )
{
match(input,LOOKUP,FOLLOW_LOOKUP_in_lookup3846);
match(input, Token.DOWN, null);
DottedIdentifier136=(CommonTree)match(input,DottedIdentifier,FOLLOW_DottedIdentifier_in_lookup3848);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:562:33: (x= indexes )?
int alt54=2;
int LA54_0 = input.LA(1);
if ( (LA54_0==INDEXES) ) {
alt54=1;
}
switch (alt54) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:562:33: x= indexes
{
pushFollow(FOLLOW_indexes_in_lookup3852);
x=indexes();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = (x != null)
? new LookupNode(line, handler, currentScope, new IdentifierNode(line, handler, currentScope, (DottedIdentifier136!=null?DottedIdentifier136.getText():null), namespaceStack.asPrefix()), x)
: new IdentifierNode(line, handler, currentScope, (DottedIdentifier136!=null?DottedIdentifier136.getText():null), namespaceStack.asPrefix());
}
break;
case 9 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:568:6: ^( LOOKUP Identifier (x= indexes )? )
{
match(input,LOOKUP,FOLLOW_LOOKUP_in_lookup3870);
match(input, Token.DOWN, null);
Identifier137=(CommonTree)match(input,Identifier,FOLLOW_Identifier_in_lookup3872);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:568:27: (x= indexes )?
int alt55=2;
int LA55_0 = input.LA(1);
if ( (LA55_0==INDEXES) ) {
alt55=1;
}
switch (alt55) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:568:27: x= indexes
{
pushFollow(FOLLOW_indexes_in_lookup3876);
x=indexes();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = (x != null)
? new LookupNode(line, handler, currentScope, new IdentifierNode(line, handler, currentScope, (Identifier137!=null?Identifier137.getText():null), namespaceStack.asPrefix()), x)
: new IdentifierNode(line, handler, currentScope, (Identifier137!=null?Identifier137.getText():null), namespaceStack.asPrefix());
}
break;
case 10 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:574:6: ^( LOOKUP String (x= indexes )? )
{
match(input,LOOKUP,FOLLOW_LOOKUP_in_lookup3894);
match(input, Token.DOWN, null);
String138=(CommonTree)match(input,String,FOLLOW_String_in_lookup3896);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:574:23: (x= indexes )?
int alt56=2;
int LA56_0 = input.LA(1);
if ( (LA56_0==INDEXES) ) {
alt56=1;
}
switch (alt56) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:574:23: x= indexes
{
pushFollow(FOLLOW_indexes_in_lookup3900);
x=indexes();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = (x != null)
? new LookupNode(line, handler, currentScope, new AtomNode(line, handler, currentScope, (String138!=null?String138.getText():null)), x)
: AtomNode.getStringAtom(line, handler,currentScope, (String138!=null?String138.getText():null));
}
break;
case 11 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:580:5: ^( LOOKUP QuotedString (x= indexes )? )
{
match(input,LOOKUP,FOLLOW_LOOKUP_in_lookup3915);
match(input, Token.DOWN, null);
QuotedString139=(CommonTree)match(input,QuotedString,FOLLOW_QuotedString_in_lookup3917);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:580:28: (x= indexes )?
int alt57=2;
int LA57_0 = input.LA(1);
if ( (LA57_0==INDEXES) ) {
alt57=1;
}
switch (alt57) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:580:28: x= indexes
{
pushFollow(FOLLOW_indexes_in_lookup3921);
x=indexes();
state._fsp--;
}
break;
}
match(input, Token.UP, null);
node = (x != null)
? new LookupNode(line, handler, currentScope, new QuotedStringNode(line, handler, currentScope, (QuotedString139!=null?QuotedString139.getText():null)), x)
: new QuotedStringNode(line, handler, currentScope, (QuotedString139!=null?QuotedString139.getText():null));
}
break;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return node;
}
// $ANTLR end "lookup"
public static class rangeindex_return extends TreeRuleReturnScope {
public ReflexNode ste;
public ReflexNode ed;
};
// $ANTLR start "rangeindex"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:588:1: rangeindex returns [ReflexNode ste, ReflexNode ed] : ^( RANGEINDEX lhs= expression rhs= expression ) ;
public final ReflexTreeWalker.rangeindex_return rangeindex() throws RecognitionException {
ReflexTreeWalker.rangeindex_return retval = new ReflexTreeWalker.rangeindex_return();
retval.start = input.LT(1);
ReflexNode lhs =null;
ReflexNode rhs =null;
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:589:3: ( ^( RANGEINDEX lhs= expression rhs= expression ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:589:3: ^( RANGEINDEX lhs= expression rhs= expression )
{
match(input,RANGEINDEX,FOLLOW_RANGEINDEX_in_rangeindex3945);
match(input, Token.DOWN, null);
pushFollow(FOLLOW_expression_in_rangeindex3949);
lhs=expression();
state._fsp--;
pushFollow(FOLLOW_expression_in_rangeindex3953);
rhs=expression();
state._fsp--;
match(input, Token.UP, null);
retval.ste = lhs; retval.ed = rhs;
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return retval;
}
// $ANTLR end "rangeindex"
// $ANTLR start "indexes"
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:592:1: indexes returns [java.util.List> e] : ^( INDEXES ( exprList )+ ) ;
public final java.util.List> indexes() throws RecognitionException {
java.util.List> e = null;
java.util.List exprList140 =null;
e = new ArrayList>();
try {
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:596:3: ( ^( INDEXES ( exprList )+ ) )
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:596:6: ^( INDEXES ( exprList )+ )
{
match(input,INDEXES,FOLLOW_INDEXES_in_indexes3978);
match(input, Token.DOWN, null);
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:596:16: ( exprList )+
int cnt59=0;
loop59:
while (true) {
int alt59=2;
int LA59_0 = input.LA(1);
if ( (LA59_0==EXP_LIST) ) {
alt59=1;
}
switch (alt59) {
case 1 :
// /Users/amkimian/Development/cloud/Rapture/Libs/Reflex/src/main/antlr3/reflex/ReflexTreeWalker.g:596:17: exprList
{
pushFollow(FOLLOW_exprList_in_indexes3981);
exprList140=exprList();
state._fsp--;
e.add(exprList140);
}
break;
default :
if ( cnt59 >= 1 ) break loop59;
EarlyExitException eee = new EarlyExitException(59, input);
throw eee;
}
cnt59++;
}
match(input, Token.UP, null);
}
}
catch (RecognitionException re) {
reportError(re);
recover(input,re);
}
finally {
// do for sure before leaving
}
return e;
}
// $ANTLR end "indexes"
// Delegated rules
protected DFA36 dfa36 = new DFA36(this);
static final String DFA36_eotS =
"\131\uffff";
static final String DFA36_eofS =
"\131\uffff";
static final String DFA36_minS =
"\1\110\1\2\2\uffff\1\6\121\uffff\1\140\2\uffff";
static final String DFA36_maxS =
"\1\u00a7\1\2\2\uffff\1\u00db\121\uffff\1\u00aa\2\uffff";
static final String DFA36_acceptS =
"\2\uffff\1\124\1\125\1\uffff\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\10\1\11\1\12"+
"\1\13\1\14\1\15\1\16\1\17\1\20\1\21\1\22\1\23\1\24\1\25\1\26\1\27\1\30"+
"\1\31\1\32\1\33\1\34\1\35\1\36\1\37\1\40\1\41\1\42\1\43\1\44\1\45\1\46"+
"\1\47\1\50\1\51\1\52\1\53\1\54\1\55\1\56\1\57\1\60\1\61\1\62\1\63\1\64"+
"\1\65\1\66\1\67\1\70\1\71\1\72\1\73\1\74\1\75\1\76\1\77\1\100\1\101\1"+
"\102\1\103\1\104\1\105\1\106\1\107\1\110\1\111\1\112\1\113\1\114\1\115"+
"\1\116\1\117\1\120\1\121\1\uffff\1\122\1\123";
static final String DFA36_specialS =
"\131\uffff}>";
static final String[] DFA36_transitionS = {
"\1\1\44\uffff\1\2\71\uffff\1\3",
"\1\4",
"",
"",
"\1\21\1\uffff\1\20\1\54\1\uffff\1\27\1\uffff\1\103\1\104\1\uffff\1\105"+
"\1\37\1\40\12\uffff\1\120\1\12\1\uffff\1\114\1\uffff\1\111\1\60\1\36"+
"\5\uffff\1\53\2\uffff\1\42\1\41\2\uffff\1\126\1\55\1\71\5\uffff\1\23"+
"\10\uffff\1\44\6\uffff\1\52\1\16\1\17\1\uffff\1\63\1\76\2\uffff\1\122"+
"\1\123\1\70\1\11\1\10\1\13\11\uffff\1\5\6\uffff\1\50\1\51\2\uffff\1\72"+
"\1\74\4\uffff\1\34\4\uffff\1\117\3\uffff\1\75\3\uffff\1\15\1\uffff\1"+
"\113\1\62\1\64\1\66\1\47\4\uffff\1\121\21\uffff\1\6\1\uffff\1\56\2\uffff"+
"\1\14\1\7\3\uffff\1\67\7\uffff\1\31\1\32\1\115\1\46\1\102\1\65\1\uffff"+
"\1\116\5\uffff\1\110\1\uffff\1\30\1\112\1\35\1\uffff\1\125\1\25\1\24"+
"\3\uffff\1\57\1\106\2\uffff\1\22\1\124\1\uffff\1\43\1\61\1\uffff\1\33"+
"\1\uffff\1\26\1\uffff\1\73\1\uffff\1\100\1\77\1\uffff\1\101\1\45\1\107",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"\1\127\22\uffff\1\130\66\uffff\1\130",
"",
""
};
static final short[] DFA36_eot = DFA.unpackEncodedString(DFA36_eotS);
static final short[] DFA36_eof = DFA.unpackEncodedString(DFA36_eofS);
static final char[] DFA36_min = DFA.unpackEncodedStringToUnsignedChars(DFA36_minS);
static final char[] DFA36_max = DFA.unpackEncodedStringToUnsignedChars(DFA36_maxS);
static final short[] DFA36_accept = DFA.unpackEncodedString(DFA36_acceptS);
static final short[] DFA36_special = DFA.unpackEncodedString(DFA36_specialS);
static final short[][] DFA36_transition;
static {
int numStates = DFA36_transitionS.length;
DFA36_transition = new short[numStates][];
for (int i=0; i
© 2015 - 2025 Weber Informatics LLC | Privacy Policy