// $ANTLR start "string_literal" // C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:90:1: string_literal returns [StringElement ret] : ( '\"' (el1= var_int_or_double_literal )* '\"' ) ; public spinachParser.string_literal_return string_literal() // throws RecognitionException [1] { spinachParser.string_literal_return retval = new spinachParser.string_literal_return(); retval.Start = input.LT(1); object root_0 = null; IToken char_literal21 = null; IToken char_literal22 = null; spinachParser.var_int_or_double_literal_return el1 = null; object char_literal21_tree=null; object char_literal22_tree=null; retval.ret = new StringElement(); try { // C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:94:2: ( ( '\"' (el1= var_int_or_double_literal )* '\"' ) ) // C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:94:3: ( '\"' (el1= var_int_or_double_literal )* '\"' ) { root_0 = (object)adaptor.GetNilNode(); // C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:94:3: ( '\"' (el1= var_int_or_double_literal )* '\"' ) // C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:94:4: '\"' (el1= var_int_or_double_literal )* '\"' { char_literal21=(IToken)Match(input,27,FOLLOW_27_in_string_literal437); char_literal21_tree = (object)adaptor.Create(char_literal21); adaptor.AddChild(root_0, char_literal21_tree); // C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:94:7: (el1= var_int_or_double_literal )* do { int alt8 = 2; int LA8_0 = input.LA(1); if ( ((LA8_0 >= VARIABLE && LA8_0 <= DOUBLE_LITERAL)) ) { alt8 = 1; } switch (alt8) { case 1 : // C:\\Documents and Settings\\Administrator\\Desktop\\Spinach\\InterpreterFrontEnd\\spinach.g:94:8: el1= var_int_or_double_literal { PushFollow(FOLLOW_var_int_or_double_literal_in_string_literal441); el1 = var_int_or_double_literal(); state.followingStackPointer--; adaptor.AddChild(root_0, el1.Tree); retval.ret.setText(((el1 != null) ? el1.ret : null)); } break; default: goto loop8; } } while (true); loop8: ; // Stops C# compiler whining that label 'loop8' has no statements char_literal22=(IToken)Match(input,27,FOLLOW_27_in_string_literal446); char_literal22_tree = (object)adaptor.Create(char_literal22); adaptor.AddChild(root_0, char_literal22_tree); retval.ret.appendText(); } } retval.Stop = input.LT(-1); retval.Tree = (object)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, (IToken) retval.Start, (IToken) retval.Stop); } catch (RecognitionException re) { ReportError(re); Recover(input,re); // Conversion of the second argument necessary, but harmless retval.Tree = (object)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re); } finally { } return retval; }
// $ANTLR start "string_literal" // spinach.g:461:1: string_literal returns [StringElement ret] : ( '\"' (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | PERCENT | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | '[' | ']' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' | 'return' | 'delete' | 'DOT' | 'T' | 'else' | 'if' | 'for' | 'parallelfor' | 'SYNC' | 'print' | 'to' )* '\"' ) ; public spinachParser.string_literal_return string_literal() // throws RecognitionException [1] { spinachParser.string_literal_return retval = new spinachParser.string_literal_return(); retval.Start = input.LT(1); object root_0 = null; IToken el3 = null; IToken el2 = null; IToken el1 = null; IToken char_literal300 = null; IToken char_literal301 = null; IToken string_literal302 = null; IToken string_literal303 = null; IToken char_literal304 = null; IToken char_literal305 = null; IToken VARTYPE306 = null; IToken SCALEMODE307 = null; IToken STRINGTYPE308 = null; IToken ASSIGNMENT309 = null; IToken char_literal310 = null; IToken PLUS311 = null; IToken MULTIPLY312 = null; IToken string_literal313 = null; IToken string_literal314 = null; IToken string_literal315 = null; IToken string_literal316 = null; IToken string_literal317 = null; IToken string_literal318 = null; IToken char_literal319 = null; IToken char_literal320 = null; IToken char_literal321 = null; IToken char_literal322 = null; IToken string_literal323 = null; IToken string_literal324 = null; IToken string_literal325 = null; IToken string_literal326 = null; IToken char_literal327 = null; IToken PERCENT328 = null; IToken char_literal329 = null; IToken char_literal330 = null; IToken char_literal331 = null; IToken char_literal332 = null; IToken char_literal333 = null; IToken char_literal334 = null; IToken char_literal335 = null; IToken char_literal336 = null; IToken char_literal337 = null; IToken char_literal338 = null; IToken char_literal339 = null; IToken char_literal340 = null; IToken string_literal341 = null; IToken string_literal342 = null; IToken string_literal343 = null; IToken string_literal344 = null; IToken string_literal345 = null; IToken string_literal346 = null; IToken string_literal347 = null; IToken string_literal348 = null; IToken char_literal349 = null; IToken string_literal350 = null; IToken string_literal351 = null; IToken string_literal352 = null; IToken string_literal353 = null; IToken string_literal354 = null; IToken string_literal355 = null; IToken string_literal356 = null; IToken char_literal357 = null; object el3_tree=null; object el2_tree=null; object el1_tree=null; object char_literal300_tree=null; object char_literal301_tree=null; object string_literal302_tree=null; object string_literal303_tree=null; object char_literal304_tree=null; object char_literal305_tree=null; object VARTYPE306_tree=null; object SCALEMODE307_tree=null; object STRINGTYPE308_tree=null; object ASSIGNMENT309_tree=null; object char_literal310_tree=null; object PLUS311_tree=null; object MULTIPLY312_tree=null; object string_literal313_tree=null; object string_literal314_tree=null; object string_literal315_tree=null; object string_literal316_tree=null; object string_literal317_tree=null; object string_literal318_tree=null; object char_literal319_tree=null; object char_literal320_tree=null; object char_literal321_tree=null; object char_literal322_tree=null; object string_literal323_tree=null; object string_literal324_tree=null; object string_literal325_tree=null; object string_literal326_tree=null; object char_literal327_tree=null; object PERCENT328_tree=null; object char_literal329_tree=null; object char_literal330_tree=null; object char_literal331_tree=null; object char_literal332_tree=null; object char_literal333_tree=null; object char_literal334_tree=null; object char_literal335_tree=null; object char_literal336_tree=null; object char_literal337_tree=null; object char_literal338_tree=null; object char_literal339_tree=null; object char_literal340_tree=null; object string_literal341_tree=null; object string_literal342_tree=null; object string_literal343_tree=null; object string_literal344_tree=null; object string_literal345_tree=null; object string_literal346_tree=null; object string_literal347_tree=null; object string_literal348_tree=null; object char_literal349_tree=null; object string_literal350_tree=null; object string_literal351_tree=null; object string_literal352_tree=null; object string_literal353_tree=null; object string_literal354_tree=null; object string_literal355_tree=null; object string_literal356_tree=null; object char_literal357_tree=null; retval.ret = new StringElement(); try { // spinach.g:465:2: ( ( '\"' (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | PERCENT | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | '[' | ']' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' | 'return' | 'delete' | 'DOT' | 'T' | 'else' | 'if' | 'for' | 'parallelfor' | 'SYNC' | 'print' | 'to' )* '\"' ) ) // spinach.g:465:3: ( '\"' (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | PERCENT | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | '[' | ']' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' | 'return' | 'delete' | 'DOT' | 'T' | 'else' | 'if' | 'for' | 'parallelfor' | 'SYNC' | 'print' | 'to' )* '\"' ) { root_0 = (object)adaptor.GetNilNode(); // spinach.g:465:3: ( '\"' (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | PERCENT | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | '[' | ']' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' | 'return' | 'delete' | 'DOT' | 'T' | 'else' | 'if' | 'for' | 'parallelfor' | 'SYNC' | 'print' | 'to' )* '\"' ) // spinach.g:465:4: '\"' (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | PERCENT | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | '[' | ']' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' | 'return' | 'delete' | 'DOT' | 'T' | 'else' | 'if' | 'for' | 'parallelfor' | 'SYNC' | 'print' | 'to' )* '\"' { char_literal300=(IToken)Match(input,58,FOLLOW_58_in_string_literal2758); char_literal300_tree = (object)adaptor.Create(char_literal300); adaptor.AddChild(root_0, char_literal300_tree); // spinach.g:466:2: (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | PERCENT | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | '[' | ']' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' | 'return' | 'delete' | 'DOT' | 'T' | 'else' | 'if' | 'for' | 'parallelfor' | 'SYNC' | 'print' | 'to' )* do { int alt61 = 60; switch ( input.LA(1) ) { case VARIABLE: { alt61 = 1; } break; case INT_LITERAL: { alt61 = 2; } break; case DOUBLE_LITERAL: { alt61 = 3; } break; case DOT: { alt61 = 4; } break; case 28: { alt61 = 5; } break; case 32: { alt61 = 6; } break; case LESSTHANEXPRESSION: { alt61 = 7; } break; case GREATERTHANEXPRESSION: { alt61 = 8; } break; case VARTYPE: { alt61 = 9; } break; case SCALEMODE: { alt61 = 10; } break; case STRINGTYPE: { alt61 = 11; } break; case ASSIGNMENT: { alt61 = 12; } break; case 33: { alt61 = 13; } break; case PLUS: { alt61 = 14; } break; case MULTIPLY: { alt61 = 15; } break; case 47: { alt61 = 16; } break; case 51: { alt61 = 17; } break; case 52: { alt61 = 18; } break; case 53: { alt61 = 19; } break; case 54: { alt61 = 20; } break; case 57: { alt61 = 21; } break; case LEFTBRACE: { alt61 = 22; } break; case RIGHTBRACE: { alt61 = 23; } break; case LEFTPARANTHESIS: { alt61 = 24; } break; case RIGHTPARANTHESIS: { alt61 = 25; } break; case POINT: { alt61 = 26; } break; case EQUALITYEXPRESSION: { alt61 = 27; } break; case NONEQUALITYEXPRESSION: { alt61 = 28; } break; case LESSTHANEQUALTOEXPRESSION: { alt61 = 29; } break; case 59: { alt61 = 30; } break; case PERCENT: { alt61 = 31; } break; case 61: { alt61 = 32; } break; case 62: { alt61 = 33; } break; case 63: { alt61 = 34; } break; case 64: { alt61 = 35; } break; case END_OF_STATEMENT: { alt61 = 36; } break; case 65: { alt61 = 37; } break; case 66: { alt61 = 38; } break; case 67: { alt61 = 39; } break; case 60: { alt61 = 40; } break; case 29: { alt61 = 41; } break; case 30: { alt61 = 42; } break; case 31: { alt61 = 43; } break; case 48: { alt61 = 44; } break; case 49: { alt61 = 45; } break; case 50: { alt61 = 46; } break; case 43: { alt61 = 47; } break; case 34: { alt61 = 48; } break; case 46: { alt61 = 49; } break; case 35: { alt61 = 50; } break; case 44: { alt61 = 51; } break; case 45: { alt61 = 52; } break; case 41: { alt61 = 53; } break; case 40: { alt61 = 54; } break; case 42: { alt61 = 55; } break; case 37: { alt61 = 56; } break; case 39: { alt61 = 57; } break; case 36: { alt61 = 58; } break; case 38: { alt61 = 59; } break; } switch (alt61) { case 1 : // spinach.g:466:3: el3= VARIABLE { el3=(IToken)Match(input,VARIABLE,FOLLOW_VARIABLE_in_string_literal2764); el3_tree = (object)adaptor.Create(el3); adaptor.AddChild(root_0, el3_tree); retval.ret.setText(((el3 != null) ? el3.Text : null)); } break; case 2 : // spinach.g:467:3: el2= INT_LITERAL { el2=(IToken)Match(input,INT_LITERAL,FOLLOW_INT_LITERAL_in_string_literal2771); el2_tree = (object)adaptor.Create(el2); adaptor.AddChild(root_0, el2_tree); retval.ret.setText(((el2 != null) ? el2.Text : null)); } break; case 3 : // spinach.g:468:3: el1= DOUBLE_LITERAL { el1=(IToken)Match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_string_literal2778); el1_tree = (object)adaptor.Create(el1); adaptor.AddChild(root_0, el1_tree); retval.ret.setText(((el1 != null) ? el1.Text : null)); } break; case 4 : // spinach.g:469:3: '.' { char_literal301=(IToken)Match(input,DOT,FOLLOW_DOT_in_string_literal2783); char_literal301_tree = (object)adaptor.Create(char_literal301); adaptor.AddChild(root_0, char_literal301_tree); retval.ret.setText("."); } break; case 5 : // spinach.g:470:3: 'matrix' { string_literal302=(IToken)Match(input,28,FOLLOW_28_in_string_literal2788); string_literal302_tree = (object)adaptor.Create(string_literal302); adaptor.AddChild(root_0, string_literal302_tree); retval.ret.setText("matrix"); } break; case 6 : // spinach.g:471:3: 'vector' { string_literal303=(IToken)Match(input,32,FOLLOW_32_in_string_literal2793); string_literal303_tree = (object)adaptor.Create(string_literal303); adaptor.AddChild(root_0, string_literal303_tree); retval.ret.setText("vector"); } break; case 7 : // spinach.g:472:3: '<' { char_literal304=(IToken)Match(input,LESSTHANEXPRESSION,FOLLOW_LESSTHANEXPRESSION_in_string_literal2798); char_literal304_tree = (object)adaptor.Create(char_literal304); adaptor.AddChild(root_0, char_literal304_tree); retval.ret.setText("<"); } break; case 8 : // spinach.g:473:3: '>' { char_literal305=(IToken)Match(input,GREATERTHANEXPRESSION,FOLLOW_GREATERTHANEXPRESSION_in_string_literal2803); char_literal305_tree = (object)adaptor.Create(char_literal305); adaptor.AddChild(root_0, char_literal305_tree); retval.ret.setText(">"); } break; case 9 : // spinach.g:474:3: VARTYPE { VARTYPE306=(IToken)Match(input,VARTYPE,FOLLOW_VARTYPE_in_string_literal2808); VARTYPE306_tree = (object)adaptor.Create(VARTYPE306); adaptor.AddChild(root_0, VARTYPE306_tree); retval.ret.setText(((VARTYPE306 != null) ? VARTYPE306.Text : null)); } break; case 10 : // spinach.g:475:3: SCALEMODE { SCALEMODE307=(IToken)Match(input,SCALEMODE,FOLLOW_SCALEMODE_in_string_literal2813); SCALEMODE307_tree = (object)adaptor.Create(SCALEMODE307); adaptor.AddChild(root_0, SCALEMODE307_tree); retval.ret.setText(((SCALEMODE307 != null) ? SCALEMODE307.Text : null)); } break; case 11 : // spinach.g:476:3: STRINGTYPE { STRINGTYPE308=(IToken)Match(input,STRINGTYPE,FOLLOW_STRINGTYPE_in_string_literal2818); STRINGTYPE308_tree = (object)adaptor.Create(STRINGTYPE308); adaptor.AddChild(root_0, STRINGTYPE308_tree); retval.ret.setText(((STRINGTYPE308 != null) ? STRINGTYPE308.Text : null)); } break; case 12 : // spinach.g:477:3: ASSIGNMENT { ASSIGNMENT309=(IToken)Match(input,ASSIGNMENT,FOLLOW_ASSIGNMENT_in_string_literal2823); ASSIGNMENT309_tree = (object)adaptor.Create(ASSIGNMENT309); adaptor.AddChild(root_0, ASSIGNMENT309_tree); retval.ret.setText(((ASSIGNMENT309 != null) ? ASSIGNMENT309.Text : null)); } break; case 13 : // spinach.g:478:3: '-' { char_literal310=(IToken)Match(input,33,FOLLOW_33_in_string_literal2828); char_literal310_tree = (object)adaptor.Create(char_literal310); adaptor.AddChild(root_0, char_literal310_tree); retval.ret.setText("-"); } break; case 14 : // spinach.g:479:3: PLUS { PLUS311=(IToken)Match(input,PLUS,FOLLOW_PLUS_in_string_literal2833); PLUS311_tree = (object)adaptor.Create(PLUS311); adaptor.AddChild(root_0, PLUS311_tree); retval.ret.setText(((PLUS311 != null) ? PLUS311.Text : null)); } break; case 15 : // spinach.g:480:3: MULTIPLY { MULTIPLY312=(IToken)Match(input,MULTIPLY,FOLLOW_MULTIPLY_in_string_literal2838); MULTIPLY312_tree = (object)adaptor.Create(MULTIPLY312); adaptor.AddChild(root_0, MULTIPLY312_tree); retval.ret.setText(((MULTIPLY312 != null) ? MULTIPLY312.Text : null)); } break; case 16 : // spinach.g:481:3: 'subPlot' { string_literal313=(IToken)Match(input,47,FOLLOW_47_in_string_literal2843); string_literal313_tree = (object)adaptor.Create(string_literal313); adaptor.AddChild(root_0, string_literal313_tree); retval.ret.setText("subPlot"); } break; case 17 : // spinach.g:482:3: 'plot' { string_literal314=(IToken)Match(input,51,FOLLOW_51_in_string_literal2848); string_literal314_tree = (object)adaptor.Create(string_literal314); adaptor.AddChild(root_0, string_literal314_tree); retval.ret.setText("plot"); } break; case 18 : // spinach.g:483:3: 'resetPlot' { string_literal315=(IToken)Match(input,52,FOLLOW_52_in_string_literal2853); string_literal315_tree = (object)adaptor.Create(string_literal315); adaptor.AddChild(root_0, string_literal315_tree); retval.ret.setText("resetPlot"); } break; case 19 : // spinach.g:484:3: 'setPlotAxis' { string_literal316=(IToken)Match(input,53,FOLLOW_53_in_string_literal2858); string_literal316_tree = (object)adaptor.Create(string_literal316); adaptor.AddChild(root_0, string_literal316_tree); retval.ret.setText("setPlotAxis"); } break; case 20 : // spinach.g:485:3: 'setAxisTitle' { string_literal317=(IToken)Match(input,54,FOLLOW_54_in_string_literal2863); string_literal317_tree = (object)adaptor.Create(string_literal317); adaptor.AddChild(root_0, string_literal317_tree); retval.ret.setText("setAxisTitle"); } break; case 21 : // spinach.g:486:3: 'setScaleMode' { string_literal318=(IToken)Match(input,57,FOLLOW_57_in_string_literal2868); string_literal318_tree = (object)adaptor.Create(string_literal318); adaptor.AddChild(root_0, string_literal318_tree); retval.ret.setText("setScaleMode"); } break; case 22 : // spinach.g:487:3: '(' { char_literal319=(IToken)Match(input,LEFTBRACE,FOLLOW_LEFTBRACE_in_string_literal2873); char_literal319_tree = (object)adaptor.Create(char_literal319); adaptor.AddChild(root_0, char_literal319_tree); retval.ret.setText("("); } break; case 23 : // spinach.g:488:3: ')' { char_literal320=(IToken)Match(input,RIGHTBRACE,FOLLOW_RIGHTBRACE_in_string_literal2878); char_literal320_tree = (object)adaptor.Create(char_literal320); adaptor.AddChild(root_0, char_literal320_tree); retval.ret.setText(")"); } break; case 24 : // spinach.g:489:3: '{' { char_literal321=(IToken)Match(input,LEFTPARANTHESIS,FOLLOW_LEFTPARANTHESIS_in_string_literal2883); char_literal321_tree = (object)adaptor.Create(char_literal321); adaptor.AddChild(root_0, char_literal321_tree); retval.ret.setText("{"); } break; case 25 : // spinach.g:490:3: '}' { char_literal322=(IToken)Match(input,RIGHTPARANTHESIS,FOLLOW_RIGHTPARANTHESIS_in_string_literal2888); char_literal322_tree = (object)adaptor.Create(char_literal322); adaptor.AddChild(root_0, char_literal322_tree); retval.ret.setText("}"); } break; case 26 : // spinach.g:491:3: '->' { string_literal323=(IToken)Match(input,POINT,FOLLOW_POINT_in_string_literal2893); string_literal323_tree = (object)adaptor.Create(string_literal323); adaptor.AddChild(root_0, string_literal323_tree); retval.ret.setText("->"); } break; case 27 : // spinach.g:492:3: '==' { string_literal324=(IToken)Match(input,EQUALITYEXPRESSION,FOLLOW_EQUALITYEXPRESSION_in_string_literal2898); string_literal324_tree = (object)adaptor.Create(string_literal324); adaptor.AddChild(root_0, string_literal324_tree); retval.ret.setText("=="); } break; case 28 : // spinach.g:493:3: '!=' { string_literal325=(IToken)Match(input,NONEQUALITYEXPRESSION,FOLLOW_NONEQUALITYEXPRESSION_in_string_literal2903); string_literal325_tree = (object)adaptor.Create(string_literal325); adaptor.AddChild(root_0, string_literal325_tree); retval.ret.setText("!="); } break; case 29 : // spinach.g:494:3: '<=' { string_literal326=(IToken)Match(input,LESSTHANEQUALTOEXPRESSION,FOLLOW_LESSTHANEQUALTOEXPRESSION_in_string_literal2908); string_literal326_tree = (object)adaptor.Create(string_literal326); adaptor.AddChild(root_0, string_literal326_tree); retval.ret.setText("<="); } break; case 30 : // spinach.g:495:3: '&' { char_literal327=(IToken)Match(input,59,FOLLOW_59_in_string_literal2913); char_literal327_tree = (object)adaptor.Create(char_literal327); adaptor.AddChild(root_0, char_literal327_tree); retval.ret.setText("&"); } break; case 31 : // spinach.g:496:3: PERCENT { PERCENT328=(IToken)Match(input,PERCENT,FOLLOW_PERCENT_in_string_literal2918); PERCENT328_tree = (object)adaptor.Create(PERCENT328); adaptor.AddChild(root_0, PERCENT328_tree); retval.ret.setText(((PERCENT328 != null) ? PERCENT328.Text : null)); } break; case 32 : // spinach.g:497:3: '^' { char_literal329=(IToken)Match(input,61,FOLLOW_61_in_string_literal2923); char_literal329_tree = (object)adaptor.Create(char_literal329); adaptor.AddChild(root_0, char_literal329_tree); retval.ret.setText("^"); } break; case 33 : // spinach.g:498:3: '$' { char_literal330=(IToken)Match(input,62,FOLLOW_62_in_string_literal2928); char_literal330_tree = (object)adaptor.Create(char_literal330); adaptor.AddChild(root_0, char_literal330_tree); retval.ret.setText("$"); } break; case 34 : // spinach.g:499:3: '#' { char_literal331=(IToken)Match(input,63,FOLLOW_63_in_string_literal2933); char_literal331_tree = (object)adaptor.Create(char_literal331); adaptor.AddChild(root_0, char_literal331_tree); retval.ret.setText("#"); } break; case 35 : // spinach.g:500:3: '@' { char_literal332=(IToken)Match(input,64,FOLLOW_64_in_string_literal2938); char_literal332_tree = (object)adaptor.Create(char_literal332); adaptor.AddChild(root_0, char_literal332_tree); retval.ret.setText("@"); } break; case 36 : // spinach.g:501:3: ';' { char_literal333=(IToken)Match(input,END_OF_STATEMENT,FOLLOW_END_OF_STATEMENT_in_string_literal2943); char_literal333_tree = (object)adaptor.Create(char_literal333); adaptor.AddChild(root_0, char_literal333_tree); retval.ret.setText(";"); } break; case 37 : // spinach.g:502:3: '!' { char_literal334=(IToken)Match(input,65,FOLLOW_65_in_string_literal2948); char_literal334_tree = (object)adaptor.Create(char_literal334); adaptor.AddChild(root_0, char_literal334_tree); retval.ret.setText("!"); } break; case 38 : // spinach.g:503:3: '?' { char_literal335=(IToken)Match(input,66,FOLLOW_66_in_string_literal2953); char_literal335_tree = (object)adaptor.Create(char_literal335); adaptor.AddChild(root_0, char_literal335_tree); retval.ret.setText("?"); } break; case 39 : // spinach.g:504:3: '/' { char_literal336=(IToken)Match(input,67,FOLLOW_67_in_string_literal2958); char_literal336_tree = (object)adaptor.Create(char_literal336); adaptor.AddChild(root_0, char_literal336_tree); retval.ret.setText("/"); } break; case 40 : // spinach.g:505:3: ':' { char_literal337=(IToken)Match(input,60,FOLLOW_60_in_string_literal2963); char_literal337_tree = (object)adaptor.Create(char_literal337); adaptor.AddChild(root_0, char_literal337_tree); retval.ret.setText(":"); } break; case 41 : // spinach.g:506:3: '[' { char_literal338=(IToken)Match(input,29,FOLLOW_29_in_string_literal2968); char_literal338_tree = (object)adaptor.Create(char_literal338); adaptor.AddChild(root_0, char_literal338_tree); retval.ret.setText("["); } break; case 42 : // spinach.g:507:3: ']' { char_literal339=(IToken)Match(input,30,FOLLOW_30_in_string_literal2973); char_literal339_tree = (object)adaptor.Create(char_literal339); adaptor.AddChild(root_0, char_literal339_tree); retval.ret.setText("]"); } break; case 43 : // spinach.g:508:3: ',' { char_literal340=(IToken)Match(input,31,FOLLOW_31_in_string_literal2979); char_literal340_tree = (object)adaptor.Create(char_literal340); adaptor.AddChild(root_0, char_literal340_tree); retval.ret.setText(","); } break; case 44 : // spinach.g:509:3: '1D' { string_literal341=(IToken)Match(input,48,FOLLOW_48_in_string_literal2984); string_literal341_tree = (object)adaptor.Create(string_literal341); adaptor.AddChild(root_0, string_literal341_tree); retval.ret.setText("1D"); } break; case 45 : // spinach.g:510:3: '2D' { string_literal342=(IToken)Match(input,49,FOLLOW_49_in_string_literal2989); string_literal342_tree = (object)adaptor.Create(string_literal342); adaptor.AddChild(root_0, string_literal342_tree); retval.ret.setText("2D"); } break; case 46 : // spinach.g:511:3: '3D' { string_literal343=(IToken)Match(input,50,FOLLOW_50_in_string_literal2994); string_literal343_tree = (object)adaptor.Create(string_literal343); adaptor.AddChild(root_0, string_literal343_tree); retval.ret.setText("3D"); } break; case 47 : // spinach.g:512:3: 'void' { string_literal344=(IToken)Match(input,43,FOLLOW_43_in_string_literal2999); string_literal344_tree = (object)adaptor.Create(string_literal344); adaptor.AddChild(root_0, string_literal344_tree); retval.ret.setText("void"); } break; case 48 : // spinach.g:513:3: 'struct' { string_literal345=(IToken)Match(input,34,FOLLOW_34_in_string_literal3004); string_literal345_tree = (object)adaptor.Create(string_literal345); adaptor.AddChild(root_0, string_literal345_tree); retval.ret.setText("struct"); } break; case 49 : // spinach.g:514:4: 'return' { string_literal346=(IToken)Match(input,46,FOLLOW_46_in_string_literal3010); string_literal346_tree = (object)adaptor.Create(string_literal346); adaptor.AddChild(root_0, string_literal346_tree); retval.ret.setText("return"); } break; case 50 : // spinach.g:515:4: 'delete' { string_literal347=(IToken)Match(input,35,FOLLOW_35_in_string_literal3016); string_literal347_tree = (object)adaptor.Create(string_literal347); adaptor.AddChild(root_0, string_literal347_tree); retval.ret.setText("delete"); } break; case 51 : // spinach.g:516:4: 'DOT' { string_literal348=(IToken)Match(input,44,FOLLOW_44_in_string_literal3023); string_literal348_tree = (object)adaptor.Create(string_literal348); adaptor.AddChild(root_0, string_literal348_tree); retval.ret.setText("DOT"); } break; case 52 : // spinach.g:517:4: 'T' { char_literal349=(IToken)Match(input,45,FOLLOW_45_in_string_literal3030); char_literal349_tree = (object)adaptor.Create(char_literal349); adaptor.AddChild(root_0, char_literal349_tree); retval.ret.setText("T"); } break; case 53 : // spinach.g:518:4: 'else' { string_literal350=(IToken)Match(input,41,FOLLOW_41_in_string_literal3037); string_literal350_tree = (object)adaptor.Create(string_literal350); adaptor.AddChild(root_0, string_literal350_tree); retval.ret.setText("else"); } break; case 54 : // spinach.g:519:4: 'if' { string_literal351=(IToken)Match(input,40,FOLLOW_40_in_string_literal3044); string_literal351_tree = (object)adaptor.Create(string_literal351); adaptor.AddChild(root_0, string_literal351_tree); retval.ret.setText("if"); } break; case 55 : // spinach.g:520:4: 'for' { string_literal352=(IToken)Match(input,42,FOLLOW_42_in_string_literal3051); string_literal352_tree = (object)adaptor.Create(string_literal352); adaptor.AddChild(root_0, string_literal352_tree); retval.ret.setText("for"); } break; case 56 : // spinach.g:521:3: 'parallelfor' { string_literal353=(IToken)Match(input,37,FOLLOW_37_in_string_literal3056); string_literal353_tree = (object)adaptor.Create(string_literal353); adaptor.AddChild(root_0, string_literal353_tree); retval.ret.setText("parallelfor"); } break; case 57 : // spinach.g:522:4: 'SYNC' { string_literal354=(IToken)Match(input,39,FOLLOW_39_in_string_literal3062); string_literal354_tree = (object)adaptor.Create(string_literal354); adaptor.AddChild(root_0, string_literal354_tree); retval.ret.setText("SYNC"); } break; case 58 : // spinach.g:523:4: 'print' { string_literal355=(IToken)Match(input,36,FOLLOW_36_in_string_literal3069); string_literal355_tree = (object)adaptor.Create(string_literal355); adaptor.AddChild(root_0, string_literal355_tree); retval.ret.setText("print"); } break; case 59 : // spinach.g:524:4: 'to' { string_literal356=(IToken)Match(input,38,FOLLOW_38_in_string_literal3076); string_literal356_tree = (object)adaptor.Create(string_literal356); adaptor.AddChild(root_0, string_literal356_tree); retval.ret.setText("to"); } break; default: goto loop61; } } while (true); loop61: ; // Stops C# compiler whining that label 'loop61' has no statements char_literal357=(IToken)Match(input,58,FOLLOW_58_in_string_literal3084); char_literal357_tree = (object)adaptor.Create(char_literal357); adaptor.AddChild(root_0, char_literal357_tree); } } retval.Stop = input.LT(-1); retval.Tree = (object)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, (IToken) retval.Start, (IToken) retval.Stop); } catch (RecognitionException re) { ReportError(re); Recover(input,re); // Conversion of the second argument necessary, but harmless retval.Tree = (object)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re); } finally { } return retval; }
// $ANTLR start "string_literal" // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:73:1: string_literal returns [StringElement ret] : ( '\"' (el1= var_int_or_double_literal )* '\"' ) ; public spinachParser.string_literal_return string_literal() // throws RecognitionException [1] { spinachParser.string_literal_return retval = new spinachParser.string_literal_return(); retval.Start = input.LT(1); object root_0 = null; IToken char_literal15 = null; IToken char_literal16 = null; spinachParser.var_int_or_double_literal_return el1 = null; object char_literal15_tree=null; object char_literal16_tree=null; retval.ret = new StringElement(); try { // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:77:2: ( ( '\"' (el1= var_int_or_double_literal )* '\"' ) ) // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:77:3: ( '\"' (el1= var_int_or_double_literal )* '\"' ) { root_0 = (object)adaptor.GetNilNode(); // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:77:3: ( '\"' (el1= var_int_or_double_literal )* '\"' ) // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:77:4: '\"' (el1= var_int_or_double_literal )* '\"' { char_literal15=(IToken)Match(input,27,FOLLOW_27_in_string_literal386); char_literal15_tree = (object)adaptor.Create(char_literal15); adaptor.AddChild(root_0, char_literal15_tree); // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:77:7: (el1= var_int_or_double_literal )* do { int alt6 = 2; int LA6_0 = input.LA(1); if ( ((LA6_0 >= VARIABLE && LA6_0 <= DOUBLE_LITERAL)) ) { alt6 = 1; } switch (alt6) { case 1 : // C:\\Users\\Jegan\\Documents\\MSCE\\FALL 09\\SoftwareStudio\\SPINACH-Srinivasan\\ConsoleApplication1\\ConsoleApplication1\\spinach.g:77:8: el1= var_int_or_double_literal { PushFollow(FOLLOW_var_int_or_double_literal_in_string_literal390); el1 = var_int_or_double_literal(); state.followingStackPointer--; adaptor.AddChild(root_0, el1.Tree); retval.ret.setText(((el1 != null) ? el1.ret : null)); } break; default: goto loop6; } } while (true); loop6: ; // Stops C# compiler whining that label 'loop6' has no statements char_literal16=(IToken)Match(input,27,FOLLOW_27_in_string_literal395); char_literal16_tree = (object)adaptor.Create(char_literal16); adaptor.AddChild(root_0, char_literal16_tree); retval.ret.appendText(); } } retval.Stop = input.LT(-1); retval.Tree = (object)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, (IToken) retval.Start, (IToken) retval.Stop); } catch (RecognitionException re) { ReportError(re); Recover(input,re); // Conversion of the second argument necessary, but harmless retval.Tree = (object)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re); } finally { } return retval; }
// $ANTLR start "string_literal" // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:479:1: string_literal returns [StringElement ret] : ( '\"' (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' )* '\"' ) ; public spinachParser.string_literal_return string_literal() // throws RecognitionException [1] { spinachParser.string_literal_return retval = new spinachParser.string_literal_return(); retval.Start = input.LT(1); object root_0 = null; IToken el3 = null; IToken el2 = null; IToken el1 = null; IToken char_literal293 = null; IToken char_literal294 = null; IToken string_literal295 = null; IToken string_literal296 = null; IToken char_literal297 = null; IToken char_literal298 = null; IToken VARTYPE299 = null; IToken SCALEMODE300 = null; IToken STRINGTYPE301 = null; IToken ASSIGNMENT302 = null; IToken char_literal303 = null; IToken PLUS304 = null; IToken MULTIPLY305 = null; IToken string_literal306 = null; IToken string_literal307 = null; IToken string_literal308 = null; IToken string_literal309 = null; IToken string_literal310 = null; IToken string_literal311 = null; IToken char_literal312 = null; IToken char_literal313 = null; IToken char_literal314 = null; IToken char_literal315 = null; IToken string_literal316 = null; IToken string_literal317 = null; IToken string_literal318 = null; IToken string_literal319 = null; IToken char_literal320 = null; IToken char_literal321 = null; IToken char_literal322 = null; IToken char_literal323 = null; IToken char_literal324 = null; IToken char_literal325 = null; IToken char_literal326 = null; IToken char_literal327 = null; IToken char_literal328 = null; IToken char_literal329 = null; IToken char_literal330 = null; IToken string_literal331 = null; IToken string_literal332 = null; IToken string_literal333 = null; IToken string_literal334 = null; IToken string_literal335 = null; IToken char_literal336 = null; object el3_tree=null; object el2_tree=null; object el1_tree=null; object char_literal293_tree=null; object char_literal294_tree=null; object string_literal295_tree=null; object string_literal296_tree=null; object char_literal297_tree=null; object char_literal298_tree=null; object VARTYPE299_tree=null; object SCALEMODE300_tree=null; object STRINGTYPE301_tree=null; object ASSIGNMENT302_tree=null; object char_literal303_tree=null; object PLUS304_tree=null; object MULTIPLY305_tree=null; object string_literal306_tree=null; object string_literal307_tree=null; object string_literal308_tree=null; object string_literal309_tree=null; object string_literal310_tree=null; object string_literal311_tree=null; object char_literal312_tree=null; object char_literal313_tree=null; object char_literal314_tree=null; object char_literal315_tree=null; object string_literal316_tree=null; object string_literal317_tree=null; object string_literal318_tree=null; object string_literal319_tree=null; object char_literal320_tree=null; object char_literal321_tree=null; object char_literal322_tree=null; object char_literal323_tree=null; object char_literal324_tree=null; object char_literal325_tree=null; object char_literal326_tree=null; object char_literal327_tree=null; object char_literal328_tree=null; object char_literal329_tree=null; object char_literal330_tree=null; object string_literal331_tree=null; object string_literal332_tree=null; object string_literal333_tree=null; object string_literal334_tree=null; object string_literal335_tree=null; object char_literal336_tree=null; retval.ret = new StringElement(); try { // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:483:2: ( ( '\"' (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' )* '\"' ) ) // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:483:3: ( '\"' (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' )* '\"' ) { root_0 = (object)adaptor.GetNilNode(); // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:483:3: ( '\"' (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' )* '\"' ) // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:483:4: '\"' (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' )* '\"' { char_literal293=(IToken)Match(input,57,FOLLOW_57_in_string_literal2837); char_literal293_tree = (object)adaptor.Create(char_literal293); adaptor.AddChild(root_0, char_literal293_tree); // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:484:2: (el3= VARIABLE | el2= INT_LITERAL | el1= DOUBLE_LITERAL | '.' | 'matrix' | 'vector' | '<' | '>' | VARTYPE | SCALEMODE | STRINGTYPE | ASSIGNMENT | '-' | PLUS | MULTIPLY | 'subPlot' | 'plot' | 'resetPlot' | 'setPlotAxis' | 'setAxisTitle' | 'setScaleMode' | '(' | ')' | '{' | '}' | '->' | '==' | '!=' | '<=' | '&' | '^' | '$' | '#' | '@' | ';' | '!' | '?' | '/' | ':' | ',' | '1D' | '2D' | '3D' | 'void' | 'struct' )* do { int alt62 = 46; switch ( input.LA(1) ) { case VARIABLE: { alt62 = 1; } break; case INT_LITERAL: { alt62 = 2; } break; case DOUBLE_LITERAL: { alt62 = 3; } break; case DOT: { alt62 = 4; } break; case 27: { alt62 = 5; } break; case 31: { alt62 = 6; } break; case LESSTHANEXPRESSION: { alt62 = 7; } break; case GREATERTHANEXPRESSION: { alt62 = 8; } break; case VARTYPE: { alt62 = 9; } break; case SCALEMODE: { alt62 = 10; } break; case STRINGTYPE: { alt62 = 11; } break; case ASSIGNMENT: { alt62 = 12; } break; case 32: { alt62 = 13; } break; case PLUS: { alt62 = 14; } break; case MULTIPLY: { alt62 = 15; } break; case 46: { alt62 = 16; } break; case 50: { alt62 = 17; } break; case 51: { alt62 = 18; } break; case 52: { alt62 = 19; } break; case 53: { alt62 = 20; } break; case 56: { alt62 = 21; } break; case LEFTBRACE: { alt62 = 22; } break; case RIGHTBRACE: { alt62 = 23; } break; case LEFTPARANTHESIS: { alt62 = 24; } break; case RIGHTPARANTHESIS: { alt62 = 25; } break; case POINT: { alt62 = 26; } break; case EQUALITYEXPRESSION: { alt62 = 27; } break; case NONEQUALITYEXPRESSION: { alt62 = 28; } break; case LESSTHANEQUALTOEXPRESSION: { alt62 = 29; } break; case 58: { alt62 = 30; } break; case 60: { alt62 = 31; } break; case 61: { alt62 = 32; } break; case 62: { alt62 = 33; } break; case 63: { alt62 = 34; } break; case END_OF_STATEMENT: { alt62 = 35; } break; case 64: { alt62 = 36; } break; case 65: { alt62 = 37; } break; case 66: { alt62 = 38; } break; case 59: { alt62 = 39; } break; case 30: { alt62 = 40; } break; case 47: { alt62 = 41; } break; case 48: { alt62 = 42; } break; case 49: { alt62 = 43; } break; case 42: { alt62 = 44; } break; case 33: { alt62 = 45; } break; } switch (alt62) { case 1 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:484:3: el3= VARIABLE { el3=(IToken)Match(input,VARIABLE,FOLLOW_VARIABLE_in_string_literal2843); el3_tree = (object)adaptor.Create(el3); adaptor.AddChild(root_0, el3_tree); retval.ret.setText(((el3 != null) ? el3.Text : null)); } break; case 2 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:485:3: el2= INT_LITERAL { el2=(IToken)Match(input,INT_LITERAL,FOLLOW_INT_LITERAL_in_string_literal2850); el2_tree = (object)adaptor.Create(el2); adaptor.AddChild(root_0, el2_tree); retval.ret.setText(((el2 != null) ? el2.Text : null)); } break; case 3 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:486:3: el1= DOUBLE_LITERAL { el1=(IToken)Match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_string_literal2857); el1_tree = (object)adaptor.Create(el1); adaptor.AddChild(root_0, el1_tree); retval.ret.setText(((el1 != null) ? el1.Text : null)); } break; case 4 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:487:3: '.' { char_literal294=(IToken)Match(input,DOT,FOLLOW_DOT_in_string_literal2862); char_literal294_tree = (object)adaptor.Create(char_literal294); adaptor.AddChild(root_0, char_literal294_tree); retval.ret.setText("."); } break; case 5 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:488:3: 'matrix' { string_literal295=(IToken)Match(input,27,FOLLOW_27_in_string_literal2867); string_literal295_tree = (object)adaptor.Create(string_literal295); adaptor.AddChild(root_0, string_literal295_tree); retval.ret.setText("matrix"); } break; case 6 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:489:3: 'vector' { string_literal296=(IToken)Match(input,31,FOLLOW_31_in_string_literal2872); string_literal296_tree = (object)adaptor.Create(string_literal296); adaptor.AddChild(root_0, string_literal296_tree); retval.ret.setText("vector"); } break; case 7 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:490:3: '<' { char_literal297=(IToken)Match(input,LESSTHANEXPRESSION,FOLLOW_LESSTHANEXPRESSION_in_string_literal2877); char_literal297_tree = (object)adaptor.Create(char_literal297); adaptor.AddChild(root_0, char_literal297_tree); retval.ret.setText("<"); } break; case 8 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:491:3: '>' { char_literal298=(IToken)Match(input,GREATERTHANEXPRESSION,FOLLOW_GREATERTHANEXPRESSION_in_string_literal2882); char_literal298_tree = (object)adaptor.Create(char_literal298); adaptor.AddChild(root_0, char_literal298_tree); retval.ret.setText(">"); } break; case 9 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:492:3: VARTYPE { VARTYPE299=(IToken)Match(input,VARTYPE,FOLLOW_VARTYPE_in_string_literal2887); VARTYPE299_tree = (object)adaptor.Create(VARTYPE299); adaptor.AddChild(root_0, VARTYPE299_tree); retval.ret.setText(((VARTYPE299 != null) ? VARTYPE299.Text : null)); } break; case 10 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:493:3: SCALEMODE { SCALEMODE300=(IToken)Match(input,SCALEMODE,FOLLOW_SCALEMODE_in_string_literal2892); SCALEMODE300_tree = (object)adaptor.Create(SCALEMODE300); adaptor.AddChild(root_0, SCALEMODE300_tree); retval.ret.setText(((SCALEMODE300 != null) ? SCALEMODE300.Text : null)); } break; case 11 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:494:3: STRINGTYPE { STRINGTYPE301=(IToken)Match(input,STRINGTYPE,FOLLOW_STRINGTYPE_in_string_literal2897); STRINGTYPE301_tree = (object)adaptor.Create(STRINGTYPE301); adaptor.AddChild(root_0, STRINGTYPE301_tree); retval.ret.setText(((STRINGTYPE301 != null) ? STRINGTYPE301.Text : null)); } break; case 12 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:495:3: ASSIGNMENT { ASSIGNMENT302=(IToken)Match(input,ASSIGNMENT,FOLLOW_ASSIGNMENT_in_string_literal2902); ASSIGNMENT302_tree = (object)adaptor.Create(ASSIGNMENT302); adaptor.AddChild(root_0, ASSIGNMENT302_tree); retval.ret.setText(((ASSIGNMENT302 != null) ? ASSIGNMENT302.Text : null)); } break; case 13 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:496:3: '-' { char_literal303=(IToken)Match(input,32,FOLLOW_32_in_string_literal2907); char_literal303_tree = (object)adaptor.Create(char_literal303); adaptor.AddChild(root_0, char_literal303_tree); retval.ret.setText("-"); } break; case 14 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:497:3: PLUS { PLUS304=(IToken)Match(input,PLUS,FOLLOW_PLUS_in_string_literal2912); PLUS304_tree = (object)adaptor.Create(PLUS304); adaptor.AddChild(root_0, PLUS304_tree); retval.ret.setText(((PLUS304 != null) ? PLUS304.Text : null)); } break; case 15 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:498:3: MULTIPLY { MULTIPLY305=(IToken)Match(input,MULTIPLY,FOLLOW_MULTIPLY_in_string_literal2917); MULTIPLY305_tree = (object)adaptor.Create(MULTIPLY305); adaptor.AddChild(root_0, MULTIPLY305_tree); retval.ret.setText(((MULTIPLY305 != null) ? MULTIPLY305.Text : null)); } break; case 16 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:499:3: 'subPlot' { string_literal306=(IToken)Match(input,46,FOLLOW_46_in_string_literal2922); string_literal306_tree = (object)adaptor.Create(string_literal306); adaptor.AddChild(root_0, string_literal306_tree); retval.ret.setText("subPlot"); } break; case 17 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:500:2: 'plot' { string_literal307=(IToken)Match(input,50,FOLLOW_50_in_string_literal2926); string_literal307_tree = (object)adaptor.Create(string_literal307); adaptor.AddChild(root_0, string_literal307_tree); retval.ret.setText("plot"); } break; case 18 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:501:2: 'resetPlot' { string_literal308=(IToken)Match(input,51,FOLLOW_51_in_string_literal2930); string_literal308_tree = (object)adaptor.Create(string_literal308); adaptor.AddChild(root_0, string_literal308_tree); retval.ret.setText("resetPlot"); } break; case 19 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:502:2: 'setPlotAxis' { string_literal309=(IToken)Match(input,52,FOLLOW_52_in_string_literal2934); string_literal309_tree = (object)adaptor.Create(string_literal309); adaptor.AddChild(root_0, string_literal309_tree); retval.ret.setText("setPlotAxis"); } break; case 20 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:503:2: 'setAxisTitle' { string_literal310=(IToken)Match(input,53,FOLLOW_53_in_string_literal2938); string_literal310_tree = (object)adaptor.Create(string_literal310); adaptor.AddChild(root_0, string_literal310_tree); retval.ret.setText("setAxisTitle"); } break; case 21 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:504:2: 'setScaleMode' { string_literal311=(IToken)Match(input,56,FOLLOW_56_in_string_literal2942); string_literal311_tree = (object)adaptor.Create(string_literal311); adaptor.AddChild(root_0, string_literal311_tree); retval.ret.setText("setScaleMode"); } break; case 22 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:505:3: '(' { char_literal312=(IToken)Match(input,LEFTBRACE,FOLLOW_LEFTBRACE_in_string_literal2947); char_literal312_tree = (object)adaptor.Create(char_literal312); adaptor.AddChild(root_0, char_literal312_tree); retval.ret.setText("("); } break; case 23 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:506:3: ')' { char_literal313=(IToken)Match(input,RIGHTBRACE,FOLLOW_RIGHTBRACE_in_string_literal2952); char_literal313_tree = (object)adaptor.Create(char_literal313); adaptor.AddChild(root_0, char_literal313_tree); retval.ret.setText(")"); } break; case 24 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:507:3: '{' { char_literal314=(IToken)Match(input,LEFTPARANTHESIS,FOLLOW_LEFTPARANTHESIS_in_string_literal2957); char_literal314_tree = (object)adaptor.Create(char_literal314); adaptor.AddChild(root_0, char_literal314_tree); retval.ret.setText("{"); } break; case 25 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:508:3: '}' { char_literal315=(IToken)Match(input,RIGHTPARANTHESIS,FOLLOW_RIGHTPARANTHESIS_in_string_literal2962); char_literal315_tree = (object)adaptor.Create(char_literal315); adaptor.AddChild(root_0, char_literal315_tree); retval.ret.setText("}"); } break; case 26 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:509:3: '->' { string_literal316=(IToken)Match(input,POINT,FOLLOW_POINT_in_string_literal2967); string_literal316_tree = (object)adaptor.Create(string_literal316); adaptor.AddChild(root_0, string_literal316_tree); retval.ret.setText("->"); } break; case 27 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:510:3: '==' { string_literal317=(IToken)Match(input,EQUALITYEXPRESSION,FOLLOW_EQUALITYEXPRESSION_in_string_literal2972); string_literal317_tree = (object)adaptor.Create(string_literal317); adaptor.AddChild(root_0, string_literal317_tree); retval.ret.setText("=="); } break; case 28 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:511:3: '!=' { string_literal318=(IToken)Match(input,NONEQUALITYEXPRESSION,FOLLOW_NONEQUALITYEXPRESSION_in_string_literal2977); string_literal318_tree = (object)adaptor.Create(string_literal318); adaptor.AddChild(root_0, string_literal318_tree); retval.ret.setText("!="); } break; case 29 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:512:3: '<=' { string_literal319=(IToken)Match(input,LESSTHANEQUALTOEXPRESSION,FOLLOW_LESSTHANEQUALTOEXPRESSION_in_string_literal2982); string_literal319_tree = (object)adaptor.Create(string_literal319); adaptor.AddChild(root_0, string_literal319_tree); retval.ret.setText("<="); } break; case 30 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:513:4: '&' { char_literal320=(IToken)Match(input,58,FOLLOW_58_in_string_literal2988); char_literal320_tree = (object)adaptor.Create(char_literal320); adaptor.AddChild(root_0, char_literal320_tree); retval.ret.setText("&"); } break; case 31 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:515:5: '^' { char_literal321=(IToken)Match(input,60,FOLLOW_60_in_string_literal2999); char_literal321_tree = (object)adaptor.Create(char_literal321); adaptor.AddChild(root_0, char_literal321_tree); retval.ret.setText("^"); } break; case 32 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:516:5: '$' { char_literal322=(IToken)Match(input,61,FOLLOW_61_in_string_literal3006); char_literal322_tree = (object)adaptor.Create(char_literal322); adaptor.AddChild(root_0, char_literal322_tree); retval.ret.setText("$"); } break; case 33 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:517:5: '#' { char_literal323=(IToken)Match(input,62,FOLLOW_62_in_string_literal3013); char_literal323_tree = (object)adaptor.Create(char_literal323); adaptor.AddChild(root_0, char_literal323_tree); retval.ret.setText("#"); } break; case 34 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:518:5: '@' { char_literal324=(IToken)Match(input,63,FOLLOW_63_in_string_literal3020); char_literal324_tree = (object)adaptor.Create(char_literal324); adaptor.AddChild(root_0, char_literal324_tree); retval.ret.setText("@"); } break; case 35 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:519:5: ';' { char_literal325=(IToken)Match(input,END_OF_STATEMENT,FOLLOW_END_OF_STATEMENT_in_string_literal3027); char_literal325_tree = (object)adaptor.Create(char_literal325); adaptor.AddChild(root_0, char_literal325_tree); retval.ret.setText(";"); } break; case 36 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:520:5: '!' { char_literal326=(IToken)Match(input,64,FOLLOW_64_in_string_literal3034); char_literal326_tree = (object)adaptor.Create(char_literal326); adaptor.AddChild(root_0, char_literal326_tree); retval.ret.setText("!"); } break; case 37 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:521:6: '?' { char_literal327=(IToken)Match(input,65,FOLLOW_65_in_string_literal3042); char_literal327_tree = (object)adaptor.Create(char_literal327); adaptor.AddChild(root_0, char_literal327_tree); retval.ret.setText("?"); } break; case 38 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:522:7: '/' { char_literal328=(IToken)Match(input,66,FOLLOW_66_in_string_literal3051); char_literal328_tree = (object)adaptor.Create(char_literal328); adaptor.AddChild(root_0, char_literal328_tree); retval.ret.setText("/"); } break; case 39 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:523:10: ':' { char_literal329=(IToken)Match(input,59,FOLLOW_59_in_string_literal3063); char_literal329_tree = (object)adaptor.Create(char_literal329); adaptor.AddChild(root_0, char_literal329_tree); retval.ret.setText(":"); } break; case 40 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:524:12: ',' { char_literal330=(IToken)Match(input,30,FOLLOW_30_in_string_literal3077); char_literal330_tree = (object)adaptor.Create(char_literal330); adaptor.AddChild(root_0, char_literal330_tree); retval.ret.setText(","); } break; case 41 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:525:14: '1D' { string_literal331=(IToken)Match(input,47,FOLLOW_47_in_string_literal3093); string_literal331_tree = (object)adaptor.Create(string_literal331); adaptor.AddChild(root_0, string_literal331_tree); retval.ret.setText("1D"); } break; case 42 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:526:16: '2D' { string_literal332=(IToken)Match(input,48,FOLLOW_48_in_string_literal3111); string_literal332_tree = (object)adaptor.Create(string_literal332); adaptor.AddChild(root_0, string_literal332_tree); retval.ret.setText("2D"); } break; case 43 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:527:18: '3D' { string_literal333=(IToken)Match(input,49,FOLLOW_49_in_string_literal3131); string_literal333_tree = (object)adaptor.Create(string_literal333); adaptor.AddChild(root_0, string_literal333_tree); retval.ret.setText("3D"); } break; case 44 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:528:11: 'void' { string_literal334=(IToken)Match(input,42,FOLLOW_42_in_string_literal3144); string_literal334_tree = (object)adaptor.Create(string_literal334); adaptor.AddChild(root_0, string_literal334_tree); retval.ret.setText("void"); } break; case 45 : // C:\\Users\\Jegan\\Desktop\\SpinachLatestVersion\\Spinach\\InterpreterFrontEnd\\spinach.g:529:9: 'struct' { string_literal335=(IToken)Match(input,33,FOLLOW_33_in_string_literal3155); string_literal335_tree = (object)adaptor.Create(string_literal335); adaptor.AddChild(root_0, string_literal335_tree); retval.ret.setText("struct"); } break; default: goto loop62; } } while (true); loop62: ; // Stops C# compiler whining that label 'loop62' has no statements char_literal336=(IToken)Match(input,57,FOLLOW_57_in_string_literal3165); char_literal336_tree = (object)adaptor.Create(char_literal336); adaptor.AddChild(root_0, char_literal336_tree); } } retval.Stop = input.LT(-1); retval.Tree = (object)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, (IToken) retval.Start, (IToken) retval.Stop); } catch (RecognitionException re) { ReportError(re); Recover(input,re); // Conversion of the second argument necessary, but harmless retval.Tree = (object)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re); } finally { } return retval; }