blob: f8d4cfe0cf1c4d14e5cbf1ac1ee7458a35f9d444 [file] [log] [blame]
/** \file
* This OBJC source file was generated by $ANTLR version 3.2 Aug 23, 2010 07:48:06
*
* - From the grammar source file : /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g
* - On : 2010-08-23 07:54:47
* - for the lexer : SimpleCLexerLexer *
* Editing it, at least manually, is not wise.
*
* ObjC language generator and runtime by Alan Condit, acondit|hereisanat|ipns|dotgoeshere|com.
*
*
*/
// [The "BSD licence"]
// Copyright (c) 2010 Alan Condit
//
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions
// are met:
// 1. Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// 2. Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in the
// documentation and/or other materials provided with the distribution.
// 3. The name of the author may not be used to endorse or promote products
// derived from this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// $ANTLR 3.2 Aug 23, 2010 07:48:06 /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g 2010-08-23 07:54:47
/* -----------------------------------------
* Include the ANTLR3 generated header file.
*/
#import "SimpleCLexer.h"
/* ----------------------------------------- */
/* ============================================================================= */
/* =============================================================================
* Start of recognizer
*/
#pragma mark Cyclic DFA implementation start DFA4
@implementation DFA4
const static NSInteger dfa4_eot[33] =
{-1,-1,-1,-1,-1,-1,-1,11,11,11,11,-1,-1,22,-1,-1,-1,11,11,11,11,-1,-1,
27,28,11,11,-1,-1,31,32,-1,-1};
const static NSInteger dfa4_eof[33] =
{-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
const static unichar dfa4_min[33] =
{9,0,0,0,0,0,0,111,110,104,111,0,0,61,0,0,0,114,116,97,105,0,0,48,48,
114,100,0,0,48,48,0,0};
const static unichar dfa4_max[33] =
{125,0,0,0,0,0,0,111,110,104,111,0,0,61,0,0,0,114,116,97,105,0,0,122,
122,114,100,0,0,122,122,0,0};
const static NSInteger dfa4_accept[33] =
{-1,1,2,3,4,5,6,-1,-1,-1,-1,11,12,-1,15,16,17,-1,-1,-1,-1,14,13,-1,-1,
-1,-1,7,8,-1,-1,9,10};
const static NSInteger dfa4_special[33] =
{-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
const static NSInteger dfa4_transition[] = {};
const static NSInteger dfa4_transition0[] = {24};
const static NSInteger dfa4_transition1[] = {26};
const static NSInteger dfa4_transition2[] = {29};
const static NSInteger dfa4_transition3[] = {20};
const static NSInteger dfa4_transition4[] = {25};
const static NSInteger dfa4_transition5[] = {16, 16, -1, -1, 16, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 16, -1,
-1, -1, -1, -1, -1, -1, 2, 4, -1, 15, 3, -1, -1, -1, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, -1, 1, 14, 13, -1, -1, -1, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
11, 11, -1, -1, -1, -1, 11, -1, 11, 11, 9, 11, 11, 7, 11, 11, 8, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 11, 11, 11, 11, 5, -1, 6};
const static NSInteger dfa4_transition6[] = {21};
const static NSInteger dfa4_transition7[] = {11, 11, 11, 11, 11, 11, 11,
11, 11, 11, -1, -1, -1, -1, -1, -1, -1, 11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
-1, -1, -1, -1, 11, -1, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11};
const static NSInteger dfa4_transition8[] = {18};
const static NSInteger dfa4_transition9[] = {19};
const static NSInteger dfa4_transition10[] = {23};
const static NSInteger dfa4_transition11[] = {17};
const static NSInteger dfa4_transition12[] = {30};
+ () newDFA4WithRecognizer:(ANTLRBaseRecognizer *)aRecognizer
{
return [[[DFA4 alloc] initWithRecognizer:aRecognizer] retain];
}
- (id) initWithRecognizer:(ANTLRBaseRecognizer *) theRecognizer
{
if ((self = [super initWithRecognizer:theRecognizer]) != nil) {
decisionNumber = 4;
eot = dfa4_eot;
eof = dfa4_eof;
min = dfa4_min;
max = dfa4_max;
accept = dfa4_accept;
special = dfa4_special;
if (!(transition = calloc(33, sizeof(void*)))) {
[self release];
return nil;
}
len = 33;
transition[0] = dfa4_transition5;
transition[1] = dfa4_transition;
transition[2] = dfa4_transition;
transition[3] = dfa4_transition;
transition[4] = dfa4_transition;
transition[5] = dfa4_transition;
transition[6] = dfa4_transition;
transition[7] = dfa4_transition11;
transition[8] = dfa4_transition8;
transition[9] = dfa4_transition9;
transition[10] = dfa4_transition3;
transition[11] = dfa4_transition;
transition[12] = dfa4_transition;
transition[13] = dfa4_transition6;
transition[14] = dfa4_transition;
transition[15] = dfa4_transition;
transition[16] = dfa4_transition;
transition[17] = dfa4_transition10;
transition[18] = dfa4_transition0;
transition[19] = dfa4_transition4;
transition[20] = dfa4_transition1;
transition[21] = dfa4_transition;
transition[22] = dfa4_transition;
transition[23] = dfa4_transition7;
transition[24] = dfa4_transition7;
transition[25] = dfa4_transition2;
transition[26] = dfa4_transition12;
transition[27] = dfa4_transition;
transition[28] = dfa4_transition;
transition[29] = dfa4_transition7;
transition[30] = dfa4_transition7;
transition[31] = dfa4_transition;
transition[32] = dfa4_transition;
}
return self;
}
- (void) dealloc
{
free(transition);
[super dealloc];
}
- (NSString *) description
{
return @"1:1: Tokens : ( T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | K_FOR | K_INT_TYPE | K_CHAR | K_VOID | K_ID | K_INT | K_EQ | K_EQEQ | K_LT | K_PLUS | WS );";
}
@end /* end DFA4 implementation */
#pragma mark Cyclic DFA implementation end DFA4
/** As per Terence: No returns for lexer rules!
#pragma mark Rule return scopes start
#pragma mark Rule return scopes end
*/
@implementation SimpleCLexer // line 330
+ (void) initialize
{
[ANTLRBaseRecognizer setGrammarFileName:@"/usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g"];
}
+ (NSString *) tokenNameForType:(NSInteger)aTokenType
{
return [[self getTokenNames] objectAtIndex:aTokenType];
}
+ (SimpleCLexer *)newSimpleCLexer:(id<ANTLRCharStream>)anInput
{
return [[SimpleCLexer alloc] initWithCharStream:anInput];
}
- (id) initWithCharStream:(id<ANTLRCharStream>)anInput
{
if ((self = [super initWithCharStream:anInput State:[ANTLRRecognizerSharedState newANTLRRecognizerSharedStateWithRuleLen:18+1]]) != nil) {
dfa4 = [DFA4 newDFA4WithRecognizer:self];
}
return self;
}
- (void) dealloc
{
[dfa4 release];
[super dealloc];
}
/* Start of actions.lexer.methods */
/* start methods() */
/* Start of Rules */
// $ANTLR start "T__21"
- (void) mT__21
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = T__21;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:7:7: ( ';' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:7:9: ';' // alt
{
[self matchChar:';'];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "T__21"
// $ANTLR start "T__22"
- (void) mT__22
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = T__22;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:8:7: ( '(' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:8:9: '(' // alt
{
[self matchChar:'('];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "T__22"
// $ANTLR start "T__23"
- (void) mT__23
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = T__23;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:9:7: ( ',' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:9:9: ',' // alt
{
[self matchChar:','];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "T__23"
// $ANTLR start "T__24"
- (void) mT__24
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = T__24;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:10:7: ( ')' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:10:9: ')' // alt
{
[self matchChar:')'];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "T__24"
// $ANTLR start "T__25"
- (void) mT__25
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = T__25;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:11:7: ( '{' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:11:9: '{' // alt
{
[self matchChar:'{'];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "T__25"
// $ANTLR start "T__26"
- (void) mT__26
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = T__26;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:12:7: ( '}' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:12:9: '}' // alt
{
[self matchChar:'}'];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "T__26"
// $ANTLR start "K_FOR"
- (void) mK_FOR
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = K_FOR;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:91:7: ( 'for' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:91:9: 'for' // alt
{
[self matchString:@"for"];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "K_FOR"
// $ANTLR start "K_INT_TYPE"
- (void) mK_INT_TYPE
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = K_INT_TYPE;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:92:12: ( 'int' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:92:14: 'int' // alt
{
[self matchString:@"int"];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "K_INT_TYPE"
// $ANTLR start "K_CHAR"
- (void) mK_CHAR
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = K_CHAR;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:93:7: ( 'char' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:93:9: 'char' // alt
{
[self matchString:@"char"];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "K_CHAR"
// $ANTLR start "K_VOID"
- (void) mK_VOID
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = K_VOID;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:94:7: ( 'void' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:94:9: 'void' // alt
{
[self matchString:@"void"];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "K_VOID"
// $ANTLR start "K_ID"
- (void) mK_ID
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = K_ID;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:96:7: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )* ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:96:11: ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )* // alt
{
if ((([input LA:1] >= 'A') && ([input LA:1] <= 'Z'))||[input LA:1] == '_'||(([input LA:1] >= 'a') && ([input LA:1] <= 'z'))) {
[input consume];
} else {
ANTLRMismatchedSetException *mse = [ANTLRMismatchedSetException exceptionWithSet:nil stream:input];
[self recover:mse];
@throw mse;}
/* element() */
do {
NSInteger alt1=2;
NSInteger LA1_0 = [input LA:1];
if ( ((LA1_0>='0' && LA1_0<='9')||(LA1_0>='A' && LA1_0<='Z')||LA1_0=='_'||(LA1_0>='a' && LA1_0<='z')) ) {
alt1=1;
}
switch (alt1) {
case 1 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g: // alt
{
if ((([input LA:1] >= '0') && ([input LA:1] <= '9'))||(([input LA:1] >= 'A') && ([input LA:1] <= 'Z'))||[input LA:1] == '_'||(([input LA:1] >= 'a') && ([input LA:1] <= 'z'))) {
[input consume];
} else {
ANTLRMismatchedSetException *mse = [ANTLRMismatchedSetException exceptionWithSet:nil stream:input];
[self recover:mse];
@throw mse;}
/* element() */
/* elements */
}
break;
default :
goto loop1;
}
} while (YES);
loop1: ;
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "K_ID"
// $ANTLR start "K_INT"
- (void) mK_INT
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = K_INT;
NSInteger _channel = ANTLRTokenChannelDefault;
id<ANTLRToken> *int=nil;
NSMutableArray *list_int=nil;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:99:7: ( (int+= ( '0' .. '9' ) )+ ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:99:9: (int+= ( '0' .. '9' ) )+ // alt
{
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:99:12: (int+= ( '0' .. '9' ) )+ // positiveClosureBlock
NSInteger cnt2=0;
do {
NSInteger alt2=2;
NSInteger LA2_0 = [input LA:1];
if ( ((LA2_0>='0' && LA2_0<='9')) ) {
alt2=1;
}
switch (alt2) {
case 1 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:99:12: int+= ( '0' .. '9' ) // alt
{
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:99:14: ( '0' .. '9' ) // blockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:99:15: '0' .. '9' // alt
{
[self matchRangeFromChar:'0' to:'9']; /* element() */
/* elements */
}
/* element() */
/* elements */
}
break;
default :
if ( cnt2 >= 1 )
goto loop2;
ANTLREarlyExitException *eee = [ANTLREarlyExitException exceptionWithStream:input decisionNumber:2];
@throw eee;
}
cnt2++;
} while (YES);
loop2: ;
/* element() */
NSLog(@"%@", list_int); /* element() */
/* elements */
}
// token+rule list labels
[list_int release];
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "K_INT"
// $ANTLR start "K_EQ"
- (void) mK_EQ
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = K_EQ;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:102:8: ( '=' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:102:10: '=' // alt
{
[self matchChar:'='];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "K_EQ"
// $ANTLR start "K_EQEQ"
- (void) mK_EQEQ
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = K_EQEQ;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:103:8: ( '==' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:103:10: '==' // alt
{
[self matchString:@"=="];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "K_EQEQ"
// $ANTLR start "K_LT"
- (void) mK_LT
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = K_LT;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:104:8: ( '<' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:104:10: '<' // alt
{
[self matchChar:'<'];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "K_LT"
// $ANTLR start "K_PLUS"
- (void) mK_PLUS
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = K_PLUS;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:105:8: ( '+' ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:105:10: '+' // alt
{
[self matchChar:'+'];
/* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "K_PLUS"
// $ANTLR start "WS"
- (void) mWS
{
//
/* ruleScopeSetUp */
@try {
NSInteger _type = WS;
NSInteger _channel = ANTLRTokenChannelDefault;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:107:5: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) // ruleBlockSingleAlt
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:107:9: ( ' ' | '\\t' | '\\r' | '\\n' )+ // alt
{
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:107:9: ( ' ' | '\\t' | '\\r' | '\\n' )+ // positiveClosureBlock
NSInteger cnt3=0;
do {
NSInteger alt3=2;
NSInteger LA3_0 = [input LA:1];
if ( ((LA3_0>='\t' && LA3_0<='\n')||LA3_0=='\r'||LA3_0==' ') ) {
alt3=1;
}
switch (alt3) {
case 1 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g: // alt
{
if ((([input LA:1] >= '\t') && ([input LA:1] <= '\n'))||[input LA:1] == '\r'||[input LA:1] == ' ') {
[input consume];
} else {
ANTLRMismatchedSetException *mse = [ANTLRMismatchedSetException exceptionWithSet:nil stream:input];
[self recover:mse];
@throw mse;}
/* element() */
/* elements */
}
break;
default :
if ( cnt3 >= 1 )
goto loop3;
ANTLREarlyExitException *eee = [ANTLREarlyExitException exceptionWithStream:input decisionNumber:3];
@throw eee;
}
cnt3++;
} while (YES);
loop3: ;
/* element() */
state.channel=99; /* element() */
/* elements */
}
// token+rule list labels
[state setType:_type];
state.channel = _channel;
}
@finally {
//
}
return;
}
// $ANTLR end "WS"
- (void) mTokens
{
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:8: ( T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | K_FOR | K_INT_TYPE | K_CHAR | K_VOID | K_ID | K_INT | K_EQ | K_EQEQ | K_LT | K_PLUS | WS ) //ruleblock
NSInteger alt4=17;
alt4 = [dfa4 predict:input];
switch (alt4) {
case 1 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:10: T__21 // alt
{
[self mT__21];
/* element() */
/* elements */
}
break;
case 2 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:16: T__22 // alt
{
[self mT__22];
/* element() */
/* elements */
}
break;
case 3 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:22: T__23 // alt
{
[self mT__23];
/* element() */
/* elements */
}
break;
case 4 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:28: T__24 // alt
{
[self mT__24];
/* element() */
/* elements */
}
break;
case 5 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:34: T__25 // alt
{
[self mT__25];
/* element() */
/* elements */
}
break;
case 6 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:40: T__26 // alt
{
[self mT__26];
/* element() */
/* elements */
}
break;
case 7 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:46: K_FOR // alt
{
[self mK_FOR];
/* element() */
/* elements */
}
break;
case 8 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:52: K_INT_TYPE // alt
{
[self mK_INT_TYPE];
/* element() */
/* elements */
}
break;
case 9 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:63: K_CHAR // alt
{
[self mK_CHAR];
/* element() */
/* elements */
}
break;
case 10 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:70: K_VOID // alt
{
[self mK_VOID];
/* element() */
/* elements */
}
break;
case 11 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:77: K_ID // alt
{
[self mK_ID];
/* element() */
/* elements */
}
break;
case 12 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:82: K_INT // alt
{
[self mK_INT];
/* element() */
/* elements */
}
break;
case 13 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:88: K_EQ // alt
{
[self mK_EQ];
/* element() */
/* elements */
}
break;
case 14 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:93: K_EQEQ // alt
{
[self mK_EQEQ];
/* element() */
/* elements */
}
break;
case 15 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:100: K_LT // alt
{
[self mK_LT];
/* element() */
/* elements */
}
break;
case 16 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:105: K_PLUS // alt
{
[self mK_PLUS];
/* element() */
/* elements */
}
break;
case 17 : ;
// /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/simplecTreeParser/SimpleC.g:1:112: WS // alt
{
[self mWS];
/* element() */
/* elements */
}
break;
}
}
@end /* end of SimpleCLexer implementation line 397 */
/* End of code
* =============================================================================
*/