1/** \file 2 * This OBJC source file was generated by $ANTLR version 3.2 Aug 20, 2010 13:39:32 3 * 4 * - From the grammar source file : /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g 5 * - On : 2010-08-20 13:40:15 6 * - for the lexer : FuzzyLexer * 7 * Editing it, at least manually, is not wise. 8 * 9 * C language generator and runtime by Jim Idle, jimi|hereisanat|idle|dotgoeshere|ws. 10 * 11 * 12*/ 13// [The "BSD licence"] 14// Copyright (c) 2010 Alan Condit 15// 16// All rights reserved. 17// 18// Redistribution and use in source and binary forms, with or without 19// modification, are permitted provided that the following conditions 20// are met: 21// 1. Redistributions of source code must retain the above copyright 22// notice, this list of conditions and the following disclaimer. 23// 2. Redistributions in binary form must reproduce the above copyright 24// notice, this list of conditions and the following disclaimer in the 25// documentation and/or other materials provided with the distribution. 26// 3. The name of the author may not be used to endorse or promote products 27// derived from this software without specific prior written permission. 28// 29// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 30// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 31// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 32// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 33// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 34// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 35// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 36// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 37// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 38// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 39 40// $ANTLR 3.2 Aug 20, 2010 13:39:32 /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g 2010-08-20 13:40:15 41 42/* ----------------------------------------- 43 * Include the ANTLR3 generated header file. 44 */ 45#import "Fuzzy.h" 46/* ----------------------------------------- */ 47 48 49/* ============================================================================= */ 50 51/* ============================================================================= 52 * Start of recognizer 53 */ 54 55#pragma mark Cyclic DFA implementation start DFA38 56@implementation DFA38 57const static NSInteger dfa38_eot[19] = 58 {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1}; 59const static NSInteger dfa38_eof[19] = 60 {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1}; 61const static unichar dfa38_min[19] = 62 {9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; 63const static unichar dfa38_max[19] = 64 {122,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; 65const static NSInteger dfa38_accept[19] = 66 {-1,-1,4,5,7,-1,2,-1,8,9,-1,3,-1,1,6,10,-1,12,11}; 67const static NSInteger dfa38_special[19] = 68 {-1,0,-1,-1,-1,1,-1,2,-1,-1,3,-1,4,-1,-1,-1,5,-1,-1}; 69const static NSInteger dfa38_transition[] = {}; 70const static NSInteger dfa38_transition0[] = {17, 17, -1, -1, -1, -1, -1, 71 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 17, -1, 72 15, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, -1, 7, -1, -1, -1, -1, 73 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 1, 1, 1, 1, 1, 1, 74 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, -1, -1, -1, 75 1, -1, 1, 1, 10, 1, 1, 16, 1, 1, 12, 1, 1, 1, 1, 1, 1, 1, 1, 5, 16, 1, 76 1, 1, 16, 1, 1, 1}; 77const static NSInteger dfa38_transition1[] = {-1}; 78 79 80+ () newDFA38WithRecognizer:(ANTLRBaseRecognizer *)aRecognizer 81{ 82 return [[[DFA38 alloc] initWithRecognizer:aRecognizer] retain]; 83} 84 85- (id) initWithRecognizer:(ANTLRBaseRecognizer *) theRecognizer 86{ 87 if ((self = [super initWithRecognizer:theRecognizer]) != nil) { 88 decisionNumber = 38; 89 eot = dfa38_eot; 90 eof = dfa38_eof; 91 min = dfa38_min; 92 max = dfa38_max; 93 accept = dfa38_accept; 94 special = dfa38_special; 95 if (!(transition = calloc(19, sizeof(void*)))) { 96 [self release]; 97 return nil; 98 } 99 len = 19; 100 transition[0] = dfa38_transition0; 101 transition[1] = dfa38_transition1; 102 transition[2] = dfa38_transition; 103 transition[3] = dfa38_transition; 104 transition[4] = dfa38_transition; 105 transition[5] = dfa38_transition1; 106 transition[6] = dfa38_transition; 107 transition[7] = dfa38_transition1; 108 transition[8] = dfa38_transition; 109 transition[9] = dfa38_transition; 110 transition[10] = dfa38_transition1; 111 transition[11] = dfa38_transition; 112 transition[12] = dfa38_transition1; 113 transition[13] = dfa38_transition; 114 transition[14] = dfa38_transition; 115 transition[15] = dfa38_transition; 116 transition[16] = dfa38_transition1; 117 transition[17] = dfa38_transition; 118 transition[18] = dfa38_transition; 119 } 120 return self; 121} 122 123/* start dfa.specialStateSTs */ 124- (NSInteger) specialStateTransition:(NSInteger)s Stream:(id<ANTLRIntStream>)anInput 125{ 126 id<ANTLRIntStream> input = anInput; 127 switch (s) { 128 case 0 : ; 129 /* cyclicDFAState */ 130 NSInteger LA38_1 = [input LA:1]; 131 132 133 NSInteger index38_1 = [input getIndex]; 134 [input rewind]; 135 s = -1; 136 /* cyclicDFAEdge */ 137 if ([self evaluateSyntacticPredicate:@selector(synpred4_Fuzzy_fragment)]) { s = 2;} 138 139 else /* cyclicDFAEdge */ 140 if ([self evaluateSyntacticPredicate:@selector(synpred5_Fuzzy_fragment)]) { s = 3;} 141 142 else /* cyclicDFAEdge */ 143 if ([self evaluateSyntacticPredicate:@selector(synpred7_Fuzzy_fragment)]) { s = 4;} 144 145 146 [input seek:index38_1]; 147 if ( s >= 0 ) 148 return s; 149 break; 150 case 1 : ; 151 /* cyclicDFAState */ 152 NSInteger LA38_5 = [input LA:1]; 153 154 155 NSInteger index38_5 = [input getIndex]; 156 [input rewind]; 157 s = -1; 158 /* cyclicDFAEdge */ 159 if ([self evaluateSyntacticPredicate:@selector(synpred2_Fuzzy_fragment)]) { s = 6;} 160 161 else /* cyclicDFAEdge */ 162 if ([self evaluateSyntacticPredicate:@selector(synpred4_Fuzzy_fragment)]) { s = 2;} 163 164 else /* cyclicDFAEdge */ 165 if ([self evaluateSyntacticPredicate:@selector(synpred5_Fuzzy_fragment)]) { s = 3;} 166 167 else /* cyclicDFAEdge */ 168 if ([self evaluateSyntacticPredicate:@selector(synpred7_Fuzzy_fragment)]) { s = 4;} 169 170 171 [input seek:index38_5]; 172 if ( s >= 0 ) 173 return s; 174 break; 175 case 2 : ; 176 /* cyclicDFAState */ 177 NSInteger LA38_7 = [input LA:1]; 178 179 180 NSInteger index38_7 = [input getIndex]; 181 [input rewind]; 182 s = -1; 183 /* cyclicDFAEdge */ 184 if ([self evaluateSyntacticPredicate:@selector(synpred8_Fuzzy_fragment)]) { s = 8;} 185 186 else /* cyclicDFAEdge */ 187 if ([self evaluateSyntacticPredicate:@selector(synpred9_Fuzzy_fragment)]) { s = 9;} 188 189 190 [input seek:index38_7]; 191 if ( s >= 0 ) 192 return s; 193 break; 194 case 3 : ; 195 /* cyclicDFAState */ 196 NSInteger LA38_10 = [input LA:1]; 197 198 199 NSInteger index38_10 = [input getIndex]; 200 [input rewind]; 201 s = -1; 202 /* cyclicDFAEdge */ 203 if ([self evaluateSyntacticPredicate:@selector(synpred3_Fuzzy_fragment)]) { s = 11;} 204 205 else /* cyclicDFAEdge */ 206 if ([self evaluateSyntacticPredicate:@selector(synpred4_Fuzzy_fragment)]) { s = 2;} 207 208 else /* cyclicDFAEdge */ 209 if ([self evaluateSyntacticPredicate:@selector(synpred5_Fuzzy_fragment)]) { s = 3;} 210 211 else /* cyclicDFAEdge */ 212 if ([self evaluateSyntacticPredicate:@selector(synpred7_Fuzzy_fragment)]) { s = 4;} 213 214 215 [input seek:index38_10]; 216 if ( s >= 0 ) 217 return s; 218 break; 219 case 4 : ; 220 /* cyclicDFAState */ 221 NSInteger LA38_12 = [input LA:1]; 222 223 224 NSInteger index38_12 = [input getIndex]; 225 [input rewind]; 226 s = -1; 227 /* cyclicDFAEdge */ 228 if ([self evaluateSyntacticPredicate:@selector(synpred1_Fuzzy_fragment)]) { s = 13;} 229 230 else /* cyclicDFAEdge */ 231 if ([self evaluateSyntacticPredicate:@selector(synpred4_Fuzzy_fragment)]) { s = 2;} 232 233 else /* cyclicDFAEdge */ 234 if ([self evaluateSyntacticPredicate:@selector(synpred5_Fuzzy_fragment)]) { s = 3;} 235 236 else /* cyclicDFAEdge */ 237 if ([self evaluateSyntacticPredicate:@selector(synpred6_Fuzzy_fragment)]) { s = 14;} 238 239 else /* cyclicDFAEdge */ 240 if ([self evaluateSyntacticPredicate:@selector(synpred7_Fuzzy_fragment)]) { s = 4;} 241 242 243 [input seek:index38_12]; 244 if ( s >= 0 ) 245 return s; 246 break; 247 case 5 : ; 248 /* cyclicDFAState */ 249 NSInteger LA38_16 = [input LA:1]; 250 251 252 NSInteger index38_16 = [input getIndex]; 253 [input rewind]; 254 s = -1; 255 /* cyclicDFAEdge */ 256 if ([self evaluateSyntacticPredicate:@selector(synpred4_Fuzzy_fragment)]) { s = 2;} 257 258 else /* cyclicDFAEdge */ 259 if ([self evaluateSyntacticPredicate:@selector(synpred5_Fuzzy_fragment)]) { s = 3;} 260 261 else /* cyclicDFAEdge */ 262 if ([self evaluateSyntacticPredicate:@selector(synpred6_Fuzzy_fragment)]) { s = 14;} 263 264 else /* cyclicDFAEdge */ 265 if ([self evaluateSyntacticPredicate:@selector(synpred7_Fuzzy_fragment)]) { s = 4;} 266 267 268 [input seek:index38_16]; 269 if ( s >= 0 ) 270 return s; 271 break; 272 } 273 if ( [recognizer getBacktrackingLevel] > 0 ) { [recognizer setFailed:YES]; return -1; } 274 ANTLRNoViableAltException *nvae = [ANTLRNoViableAltException newANTLRNoViableAltException:38 state:s stream:[recognizer getInput]]; 275 /* [self error:nvae]; */ 276 @throw nvae; 277} 278 279/* end dfa.specialStateSTs */ 280- (void) dealloc 281{ 282 free(transition); 283 [super dealloc]; 284} 285 286- (NSString *) description 287{ 288 return @"1:1: Tokens options {k=1; backtrack=true; } : ( IMPORT | RETURN | CLASS | METHOD | FIELD | STAT | CALL | COMMENT | SL_COMMENT | STRING | CHAR | WS );"; 289} 290 291 292@end 293#pragma mark Cyclic DFA implementation end DFA38 294 295 296 297/** As per Terence: No returns for lexer rules! 298#pragma mark Rule return scopes start 299#pragma mark Rule return scopes end 300*/ 301@implementation Fuzzy // line 330 302 303+ (void) initialize 304{ 305 [ANTLRBaseRecognizer setGrammarFileName:@"/usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g"]; 306} 307 308+ (NSString *) tokenNameForType:(NSInteger)aTokenType 309{ 310 return [[self getTokenNames] objectAtIndex:aTokenType]; 311} 312 313+ (Fuzzy *)newFuzzy:(id<ANTLRCharStream>)anInput 314{ 315 return [[Fuzzy alloc] initWithCharStream:anInput]; 316} 317 318- (id) initWithCharStream:(id<ANTLRCharStream>)anInput 319{ 320 if ((self = [super initWithCharStream:anInput State:[ANTLRRecognizerSharedState newANTLRRecognizerSharedStateWithRuleLen:30+1]]) != nil) { 321 SEL synpred9_FuzzySelector = @selector(synpred9_Fuzzy_fragment); 322 323 SEL synpred2_FuzzySelector = @selector(synpred2_Fuzzy_fragment); 324 325 SEL synpred7_FuzzySelector = @selector(synpred7_Fuzzy_fragment); 326 327 SEL synpred4_FuzzySelector = @selector(synpred4_Fuzzy_fragment); 328 329 SEL synpred8_FuzzySelector = @selector(synpred8_Fuzzy_fragment); 330 331 SEL synpred6_FuzzySelector = @selector(synpred6_Fuzzy_fragment); 332 333 SEL synpred5_FuzzySelector = @selector(synpred5_Fuzzy_fragment); 334 335 SEL synpred3_FuzzySelector = @selector(synpred3_Fuzzy_fragment); 336 337 SEL synpred1_FuzzySelector = @selector(synpred1_Fuzzy_fragment); 338 339 dfa38 = [DFA38 newDFA38WithRecognizer:self]; 340 } 341 return self; 342} 343 344- (void) dealloc 345{ 346 [dfa38 release]; 347 [super dealloc]; 348} 349 350// Start of actions.lexer.methods 351// start methods() 352 353- (id<ANTLRToken>) nextToken 354{ 355 while (YES) { 356 if ( [input LA:1] == ANTLRCharStreamEOF ) { 357 return [ANTLRCommonToken eofToken]; // should really be a +eofToken call here -> go figure 358 } 359 state.token = nil; 360 state.channel = ANTLRTokenChannelDefault; 361 state.tokenStartCharIndex = [input getIndex]; 362 state.tokenStartCharPositionInLine = [input getCharPositionInLine]; 363 state.tokenStartLine = [input getLine]; 364 state.text = nil; 365 @try { 366 NSInteger m = [input mark]; 367 state.backtracking = 1; /* means we won't throw slow exception */ 368 state.failed = NO; 369 [self mTokens]; 370 state.backtracking = 0; 371 /* mTokens backtracks with synpred at backtracking==2 372 and we set the synpredgate to allow actions at level 1. */ 373 if ( state.failed == YES ) { 374 [input rewind:m]; 375 [input consume]; /* advance one char and try again */ 376 } else { 377 [self emit]; 378 return state.token; 379 } 380 } 381 @catch (ANTLRRecognitionException *re) { 382 // shouldn't happen in backtracking mode, but... 383 [self reportError:re]; 384 [self recover:re]; 385 } 386 } 387} 388 389- (void)memoize:(id<ANTLRIntStream>)anInput 390 RuleIndex:(NSInteger)ruleIndex 391 StartIndex:(NSInteger)ruleStartIndex 392{ 393 if ( state.backtracking > 1 ) [super memoize:anInput RuleIndex:ruleIndex StartIndex:ruleStartIndex]; 394} 395 396- (BOOL)alreadyParsedRule:(id<ANTLRIntStream>)anInput RuleIndex:(NSInteger)ruleIndex 397{ 398 if ( state.backtracking > 1 ) return [super alreadyParsedRule:anInput RuleIndex:ruleIndex]; 399 return NO; 400} 401// Start of Rules 402// $ANTLR start "IMPORT" 403- (void) mIMPORT 404{ 405 // 406 // ruleScopeSetUp 407 408 @try { 409 NSInteger _type = IMPORT; 410 NSInteger _channel = ANTLRTokenChannelDefault; 411 id<ANTLRToken> name=nil; 412 413 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:5:2: ( 'import' WS name= QIDStar ( WS )? ';' ) // ruleBlockSingleAlt 414 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:5:4: 'import' WS name= QIDStar ( WS )? ';' // alt 415 { 416 [self matchString:@"import"]; if ( state.failed == YES ) return ; 417 /* element() */ 418 [self mWS]; if ( state.failed == YES ) return ; 419 /* element() */ 420 NSInteger nameStart31 = [self getIndex]; 421 [self mQIDStar]; if ( state.failed == YES ) return ; 422 423 name = [[ANTLRCommonToken newANTLRCommonToken:input Type:ANTLRTokenTypeInvalid Channel:ANTLRTokenChannelDefault Start:nameStart31 Stop:[self getIndex]-1] retain]; 424 [name setLine:[self getLine]]; /* element() */ 425 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:5:29: ( WS )? // block 426 NSInteger alt1=2; 427 NSInteger LA1_0 = [input LA:1]; 428 429 if ( ((LA1_0>='\t' && LA1_0<='\n')||LA1_0==' ') ) { 430 alt1=1; 431 } 432 switch (alt1) { 433 case 1 : ; 434 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:5:29: WS // alt 435 { 436 [self mWS]; if ( state.failed == YES ) return ; 437 /* element() */ 438 /* elements */ 439 } 440 break; 441 442 } 443 /* element() */ 444 [self matchChar:';']; if ( state.failed == YES ) return ; 445 /* element() */ 446 /* elements */ 447 } 448 449 // token+rule list labels 450 451 [state setType:_type]; 452 453 state.channel = _channel; 454 } 455 @finally { 456 // 457 } 458 return; 459} 460// $ANTLR end "IMPORT" 461 462// $ANTLR start "RETURN" 463- (void) mRETURN 464{ 465 // 466 // ruleScopeSetUp 467 468 @try { 469 NSInteger _type = RETURN; 470 NSInteger _channel = ANTLRTokenChannelDefault; 471 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:10:2: ( 'return' ( options {greedy=false; } : . )* ';' ) // ruleBlockSingleAlt 472 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:10:4: 'return' ( options {greedy=false; } : . )* ';' // alt 473 { 474 [self matchString:@"return"]; if ( state.failed == YES ) return ; 475 /* element() */ 476 do { 477 NSInteger alt2=2; 478 NSInteger LA2_0 = [input LA:1]; 479 if ( (LA2_0==';') ) { 480 alt2=2; 481 } 482 else if ( ((LA2_0>=0x0000 && LA2_0<=':')||(LA2_0>='<' && LA2_0<=0xFFFF)) ) { 483 alt2=1; 484 } 485 486 487 switch (alt2) { 488 case 1 : ; 489 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:10:38: . // alt 490 { 491 [self matchAny]; if ( state.failed == YES ) return ; 492 /* element() */ 493 /* elements */ 494 } 495 break; 496 497 default : 498 goto loop2; 499 } 500 } while (YES); 501 loop2: ; 502 /* element() */ 503 [self matchChar:';']; if ( state.failed == YES ) return ; 504 /* element() */ 505 /* elements */ 506 } 507 508 // token+rule list labels 509 510 [state setType:_type]; 511 512 state.channel = _channel; 513 } 514 @finally { 515 // 516 } 517 return; 518} 519// $ANTLR end "RETURN" 520 521// $ANTLR start "CLASS" 522- (void) mCLASS 523{ 524 // 525 // ruleScopeSetUp 526 527 @try { 528 NSInteger _type = CLASS; 529 NSInteger _channel = ANTLRTokenChannelDefault; 530 id<ANTLRToken> name=nil; 531 532 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:14:2: ( 'class' WS name= ID ( WS )? ( 'extends' WS QID ( WS )? )? ( 'implements' WS QID ( WS )? ( ',' ( WS )? QID ( WS )? )* )? '{' ) // ruleBlockSingleAlt 533 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:14:4: 'class' WS name= ID ( WS )? ( 'extends' WS QID ( WS )? )? ( 'implements' WS QID ( WS )? ( ',' ( WS )? QID ( WS )? )* )? '{' // alt 534 { 535 [self matchString:@"class"]; if ( state.failed == YES ) return ; 536 /* element() */ 537 [self mWS]; if ( state.failed == YES ) return ; 538 /* element() */ 539 NSInteger nameStart81 = [self getIndex]; 540 [self mID]; if ( state.failed == YES ) return ; 541 542 name = [[ANTLRCommonToken newANTLRCommonToken:input Type:ANTLRTokenTypeInvalid Channel:ANTLRTokenChannelDefault Start:nameStart81 Stop:[self getIndex]-1] retain]; 543 [name setLine:[self getLine]]; /* element() */ 544 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:14:23: ( WS )? // block 545 NSInteger alt3=2; 546 NSInteger LA3_0 = [input LA:1]; 547 548 if ( ((LA3_0>='\t' && LA3_0<='\n')||LA3_0==' ') ) { 549 alt3=1; 550 } 551 switch (alt3) { 552 case 1 : ; 553 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:14:23: WS // alt 554 { 555 [self mWS]; if ( state.failed == YES ) return ; 556 /* element() */ 557 /* elements */ 558 } 559 break; 560 561 } 562 /* element() */ 563 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:14:27: ( 'extends' WS QID ( WS )? )? // block 564 NSInteger alt5=2; 565 NSInteger LA5_0 = [input LA:1]; 566 567 if ( (LA5_0=='e') ) { 568 alt5=1; 569 } 570 switch (alt5) { 571 case 1 : ; 572 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:14:28: 'extends' WS QID ( WS )? // alt 573 { 574 [self matchString:@"extends"]; if ( state.failed == YES ) return ; 575 /* element() */ 576 [self mWS]; if ( state.failed == YES ) return ; 577 /* element() */ 578 [self mQID]; if ( state.failed == YES ) return ; 579 /* element() */ 580 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:14:45: ( WS )? // block 581 NSInteger alt4=2; 582 NSInteger LA4_0 = [input LA:1]; 583 584 if ( ((LA4_0>='\t' && LA4_0<='\n')||LA4_0==' ') ) { 585 alt4=1; 586 } 587 switch (alt4) { 588 case 1 : ; 589 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:14:45: WS // alt 590 { 591 [self mWS]; if ( state.failed == YES ) return ; 592 /* element() */ 593 /* elements */ 594 } 595 break; 596 597 } 598 /* element() */ 599 /* elements */ 600 } 601 break; 602 603 } 604 /* element() */ 605 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:15:3: ( 'implements' WS QID ( WS )? ( ',' ( WS )? QID ( WS )? )* )? // block 606 NSInteger alt10=2; 607 NSInteger LA10_0 = [input LA:1]; 608 609 if ( (LA10_0=='i') ) { 610 alt10=1; 611 } 612 switch (alt10) { 613 case 1 : ; 614 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:15:4: 'implements' WS QID ( WS )? ( ',' ( WS )? QID ( WS )? )* // alt 615 { 616 [self matchString:@"implements"]; if ( state.failed == YES ) return ; 617 /* element() */ 618 [self mWS]; if ( state.failed == YES ) return ; 619 /* element() */ 620 [self mQID]; if ( state.failed == YES ) return ; 621 /* element() */ 622 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:15:24: ( WS )? // block 623 NSInteger alt6=2; 624 NSInteger LA6_0 = [input LA:1]; 625 626 if ( ((LA6_0>='\t' && LA6_0<='\n')||LA6_0==' ') ) { 627 alt6=1; 628 } 629 switch (alt6) { 630 case 1 : ; 631 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:15:24: WS // alt 632 { 633 [self mWS]; if ( state.failed == YES ) return ; 634 /* element() */ 635 /* elements */ 636 } 637 break; 638 639 } 640 /* element() */ 641 do { 642 NSInteger alt9=2; 643 NSInteger LA9_0 = [input LA:1]; 644 if ( (LA9_0==',') ) { 645 alt9=1; 646 } 647 648 649 switch (alt9) { 650 case 1 : ; 651 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:15:29: ',' ( WS )? QID ( WS )? // alt 652 { 653 [self matchChar:',']; if ( state.failed == YES ) return ; 654 /* element() */ 655 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:15:33: ( WS )? // block 656 NSInteger alt7=2; 657 NSInteger LA7_0 = [input LA:1]; 658 659 if ( ((LA7_0>='\t' && LA7_0<='\n')||LA7_0==' ') ) { 660 alt7=1; 661 } 662 switch (alt7) { 663 case 1 : ; 664 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:15:33: WS // alt 665 { 666 [self mWS]; if ( state.failed == YES ) return ; 667 /* element() */ 668 /* elements */ 669 } 670 break; 671 672 } 673 /* element() */ 674 [self mQID]; if ( state.failed == YES ) return ; 675 /* element() */ 676 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:15:41: ( WS )? // block 677 NSInteger alt8=2; 678 NSInteger LA8_0 = [input LA:1]; 679 680 if ( ((LA8_0>='\t' && LA8_0<='\n')||LA8_0==' ') ) { 681 alt8=1; 682 } 683 switch (alt8) { 684 case 1 : ; 685 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:15:41: WS // alt 686 { 687 [self mWS]; if ( state.failed == YES ) return ; 688 /* element() */ 689 /* elements */ 690 } 691 break; 692 693 } 694 /* element() */ 695 /* elements */ 696 } 697 break; 698 699 default : 700 goto loop9; 701 } 702 } while (YES); 703 loop9: ; 704 /* element() */ 705 /* elements */ 706 } 707 break; 708 709 } 710 /* element() */ 711 [self matchChar:'{']; if ( state.failed == YES ) return ; 712 /* element() */ 713 if ( state.backtracking == 1 ) { 714 NSLog(@"found class %@", (name!=nil?[name getText]:0)); 715 } /* element() */ 716 /* elements */ 717 } 718 719 // token+rule list labels 720 721 [state setType:_type]; 722 723 state.channel = _channel; 724 } 725 @finally { 726 // 727 } 728 return; 729} 730// $ANTLR end "CLASS" 731 732// $ANTLR start "METHOD" 733- (void) mMETHOD 734{ 735 // 736 // ruleScopeSetUp 737 738 @try { 739 NSInteger _type = METHOD; 740 NSInteger _channel = ANTLRTokenChannelDefault; 741 id<ANTLRToken> name=nil; 742 743 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:5: ( TYPE WS name= ID ( WS )? '(' ( ARG ( WS )? ( ',' ( WS )? ARG ( WS )? )* )? ')' ( WS )? ( 'throws' WS QID ( WS )? ( ',' ( WS )? QID ( WS )? )* )? '{' ) // ruleBlockSingleAlt 744 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:9: TYPE WS name= ID ( WS )? '(' ( ARG ( WS )? ( ',' ( WS )? ARG ( WS )? )* )? ')' ( WS )? ( 'throws' WS QID ( WS )? ( ',' ( WS )? QID ( WS )? )* )? '{' // alt 745 { 746 [self mTYPE]; if ( state.failed == YES ) return ; 747 /* element() */ 748 [self mWS]; if ( state.failed == YES ) return ; 749 /* element() */ 750 NSInteger nameStart158 = [self getIndex]; 751 [self mID]; if ( state.failed == YES ) return ; 752 753 name = [[ANTLRCommonToken newANTLRCommonToken:input Type:ANTLRTokenTypeInvalid Channel:ANTLRTokenChannelDefault Start:nameStart158 Stop:[self getIndex]-1] retain]; 754 [name setLine:[self getLine]]; /* element() */ 755 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:25: ( WS )? // block 756 NSInteger alt11=2; 757 NSInteger LA11_0 = [input LA:1]; 758 759 if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0==' ') ) { 760 alt11=1; 761 } 762 switch (alt11) { 763 case 1 : ; 764 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:25: WS // alt 765 { 766 [self mWS]; if ( state.failed == YES ) return ; 767 /* element() */ 768 /* elements */ 769 } 770 break; 771 772 } 773 /* element() */ 774 [self matchChar:'(']; if ( state.failed == YES ) return ; 775 /* element() */ 776 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:33: ( ARG ( WS )? ( ',' ( WS )? ARG ( WS )? )* )? // block 777 NSInteger alt16=2; 778 NSInteger LA16_0 = [input LA:1]; 779 780 if ( ((LA16_0>='A' && LA16_0<='Z')||LA16_0=='_'||(LA16_0>='a' && LA16_0<='z')) ) { 781 alt16=1; 782 } 783 switch (alt16) { 784 case 1 : ; 785 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:35: ARG ( WS )? ( ',' ( WS )? ARG ( WS )? )* // alt 786 { 787 [self mARG]; if ( state.failed == YES ) return ; 788 /* element() */ 789 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:39: ( WS )? // block 790 NSInteger alt12=2; 791 NSInteger LA12_0 = [input LA:1]; 792 793 if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0==' ') ) { 794 alt12=1; 795 } 796 switch (alt12) { 797 case 1 : ; 798 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:39: WS // alt 799 { 800 [self mWS]; if ( state.failed == YES ) return ; 801 /* element() */ 802 /* elements */ 803 } 804 break; 805 806 } 807 /* element() */ 808 do { 809 NSInteger alt15=2; 810 NSInteger LA15_0 = [input LA:1]; 811 if ( (LA15_0==',') ) { 812 alt15=1; 813 } 814 815 816 switch (alt15) { 817 case 1 : ; 818 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:44: ',' ( WS )? ARG ( WS )? // alt 819 { 820 [self matchChar:',']; if ( state.failed == YES ) return ; 821 /* element() */ 822 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:48: ( WS )? // block 823 NSInteger alt13=2; 824 NSInteger LA13_0 = [input LA:1]; 825 826 if ( ((LA13_0>='\t' && LA13_0<='\n')||LA13_0==' ') ) { 827 alt13=1; 828 } 829 switch (alt13) { 830 case 1 : ; 831 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:48: WS // alt 832 { 833 [self mWS]; if ( state.failed == YES ) return ; 834 /* element() */ 835 /* elements */ 836 } 837 break; 838 839 } 840 /* element() */ 841 [self mARG]; if ( state.failed == YES ) return ; 842 /* element() */ 843 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:56: ( WS )? // block 844 NSInteger alt14=2; 845 NSInteger LA14_0 = [input LA:1]; 846 847 if ( ((LA14_0>='\t' && LA14_0<='\n')||LA14_0==' ') ) { 848 alt14=1; 849 } 850 switch (alt14) { 851 case 1 : ; 852 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:56: WS // alt 853 { 854 [self mWS]; if ( state.failed == YES ) return ; 855 /* element() */ 856 /* elements */ 857 } 858 break; 859 860 } 861 /* element() */ 862 /* elements */ 863 } 864 break; 865 866 default : 867 goto loop15; 868 } 869 } while (YES); 870 loop15: ; 871 /* element() */ 872 /* elements */ 873 } 874 break; 875 876 } 877 /* element() */ 878 [self matchChar:')']; if ( state.failed == YES ) return ; 879 /* element() */ 880 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:69: ( WS )? // block 881 NSInteger alt17=2; 882 NSInteger LA17_0 = [input LA:1]; 883 884 if ( ((LA17_0>='\t' && LA17_0<='\n')||LA17_0==' ') ) { 885 alt17=1; 886 } 887 switch (alt17) { 888 case 1 : ; 889 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:20:69: WS // alt 890 { 891 [self mWS]; if ( state.failed == YES ) return ; 892 /* element() */ 893 /* elements */ 894 } 895 break; 896 897 } 898 /* element() */ 899 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:21:8: ( 'throws' WS QID ( WS )? ( ',' ( WS )? QID ( WS )? )* )? // block 900 NSInteger alt22=2; 901 NSInteger LA22_0 = [input LA:1]; 902 903 if ( (LA22_0=='t') ) { 904 alt22=1; 905 } 906 switch (alt22) { 907 case 1 : ; 908 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:21:9: 'throws' WS QID ( WS )? ( ',' ( WS )? QID ( WS )? )* // alt 909 { 910 [self matchString:@"throws"]; if ( state.failed == YES ) return ; 911 /* element() */ 912 [self mWS]; if ( state.failed == YES ) return ; 913 /* element() */ 914 [self mQID]; if ( state.failed == YES ) return ; 915 /* element() */ 916 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:21:25: ( WS )? // block 917 NSInteger alt18=2; 918 NSInteger LA18_0 = [input LA:1]; 919 920 if ( ((LA18_0>='\t' && LA18_0<='\n')||LA18_0==' ') ) { 921 alt18=1; 922 } 923 switch (alt18) { 924 case 1 : ; 925 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:21:25: WS // alt 926 { 927 [self mWS]; if ( state.failed == YES ) return ; 928 /* element() */ 929 /* elements */ 930 } 931 break; 932 933 } 934 /* element() */ 935 do { 936 NSInteger alt21=2; 937 NSInteger LA21_0 = [input LA:1]; 938 if ( (LA21_0==',') ) { 939 alt21=1; 940 } 941 942 943 switch (alt21) { 944 case 1 : ; 945 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:21:30: ',' ( WS )? QID ( WS )? // alt 946 { 947 [self matchChar:',']; if ( state.failed == YES ) return ; 948 /* element() */ 949 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:21:34: ( WS )? // block 950 NSInteger alt19=2; 951 NSInteger LA19_0 = [input LA:1]; 952 953 if ( ((LA19_0>='\t' && LA19_0<='\n')||LA19_0==' ') ) { 954 alt19=1; 955 } 956 switch (alt19) { 957 case 1 : ; 958 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:21:34: WS // alt 959 { 960 [self mWS]; if ( state.failed == YES ) return ; 961 /* element() */ 962 /* elements */ 963 } 964 break; 965 966 } 967 /* element() */ 968 [self mQID]; if ( state.failed == YES ) return ; 969 /* element() */ 970 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:21:42: ( WS )? // block 971 NSInteger alt20=2; 972 NSInteger LA20_0 = [input LA:1]; 973 974 if ( ((LA20_0>='\t' && LA20_0<='\n')||LA20_0==' ') ) { 975 alt20=1; 976 } 977 switch (alt20) { 978 case 1 : ; 979 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:21:42: WS // alt 980 { 981 [self mWS]; if ( state.failed == YES ) return ; 982 /* element() */ 983 /* elements */ 984 } 985 break; 986 987 } 988 /* element() */ 989 /* elements */ 990 } 991 break; 992 993 default : 994 goto loop21; 995 } 996 } while (YES); 997 loop21: ; 998 /* element() */ 999 /* elements */ 1000 } 1001 break; 1002 1003 } 1004 /* element() */ 1005 [self matchChar:'{']; if ( state.failed == YES ) return ; 1006 /* element() */ 1007 if ( state.backtracking == 1 ) { 1008 NSLog(@"found method %@", (name!=nil?[name getText]:0)); 1009 } /* element() */ 1010 /* elements */ 1011 } 1012 1013 // token+rule list labels 1014 1015 [state setType:_type]; 1016 1017 state.channel = _channel; 1018 } 1019 @finally { 1020 // 1021 } 1022 return; 1023} 1024// $ANTLR end "METHOD" 1025 1026// $ANTLR start "FIELD" 1027- (void) mFIELD 1028{ 1029 // 1030 // ruleScopeSetUp 1031 1032 @try { 1033 NSInteger _type = FIELD; 1034 NSInteger _channel = ANTLRTokenChannelDefault; 1035 id<ANTLRToken> name=nil; 1036 1037 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:26:5: ( TYPE WS name= ID ( '[]' )? ( WS )? ( ';' | '=' ) ) // ruleBlockSingleAlt 1038 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:26:9: TYPE WS name= ID ( '[]' )? ( WS )? ( ';' | '=' ) // alt 1039 { 1040 [self mTYPE]; if ( state.failed == YES ) return ; 1041 /* element() */ 1042 [self mWS]; if ( state.failed == YES ) return ; 1043 /* element() */ 1044 NSInteger nameStart261 = [self getIndex]; 1045 [self mID]; if ( state.failed == YES ) return ; 1046 1047 name = [[ANTLRCommonToken newANTLRCommonToken:input Type:ANTLRTokenTypeInvalid Channel:ANTLRTokenChannelDefault Start:nameStart261 Stop:[self getIndex]-1] retain]; 1048 [name setLine:[self getLine]]; /* element() */ 1049 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:26:25: ( '[]' )? // block 1050 NSInteger alt23=2; 1051 NSInteger LA23_0 = [input LA:1]; 1052 1053 if ( (LA23_0=='[') ) { 1054 alt23=1; 1055 } 1056 switch (alt23) { 1057 case 1 : ; 1058 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:26:25: '[]' // alt 1059 { 1060 [self matchString:@"[]"]; if ( state.failed == YES ) return ; 1061 /* element() */ 1062 /* elements */ 1063 } 1064 break; 1065 1066 } 1067 /* element() */ 1068 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:26:31: ( WS )? // block 1069 NSInteger alt24=2; 1070 NSInteger LA24_0 = [input LA:1]; 1071 1072 if ( ((LA24_0>='\t' && LA24_0<='\n')||LA24_0==' ') ) { 1073 alt24=1; 1074 } 1075 switch (alt24) { 1076 case 1 : ; 1077 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:26:31: WS // alt 1078 { 1079 [self mWS]; if ( state.failed == YES ) return ; 1080 /* element() */ 1081 /* elements */ 1082 } 1083 break; 1084 1085 } 1086 /* element() */ 1087 if ([input LA:1] == ';'||[input LA:1] == '=') { 1088 [input consume]; 1089 state.failed = NO; 1090 1091 } else { 1092 if ( state.backtracking > 0 ) { state.failed = YES; return ; } 1093 ANTLRMismatchedSetException *mse = [ANTLRMismatchedSetException exceptionWithSet:nil stream:input]; 1094 [self recover:mse]; 1095 @throw mse;} 1096 /* element() */ 1097 if ( state.backtracking == 1 ) { 1098 NSLog(@"found var %@", (name!=nil?[name getText]:0)); 1099 } /* element() */ 1100 /* elements */ 1101 } 1102 1103 // token+rule list labels 1104 1105 [state setType:_type]; 1106 1107 state.channel = _channel; 1108 } 1109 @finally { 1110 // 1111 } 1112 return; 1113} 1114// $ANTLR end "FIELD" 1115 1116// $ANTLR start "STAT" 1117- (void) mSTAT 1118{ 1119 // 1120 // ruleScopeSetUp 1121 1122 @try { 1123 NSInteger _type = STAT; 1124 NSInteger _channel = ANTLRTokenChannelDefault; 1125 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:30:5: ( ( 'if' | 'while' | 'switch' | 'for' ) ( WS )? '(' ) // ruleBlockSingleAlt 1126 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:30:7: ( 'if' | 'while' | 'switch' | 'for' ) ( WS )? '(' // alt 1127 { 1128 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:30:7: ( 'if' | 'while' | 'switch' | 'for' ) // block 1129 NSInteger alt25=4; 1130 switch ([input LA:1]) { 1131 case 'i': ; 1132 { 1133 alt25=1; 1134 } 1135 break; 1136 case 'w': ; 1137 { 1138 alt25=2; 1139 } 1140 break; 1141 case 's': ; 1142 { 1143 alt25=3; 1144 } 1145 break; 1146 case 'f': ; 1147 { 1148 alt25=4; 1149 } 1150 break; 1151 1152 default: ; 1153 if ( state.backtracking > 0 ) { state.failed = YES; return ; } 1154 ANTLRNoViableAltException *nvae = [ANTLRNoViableAltException newANTLRNoViableAltException:25 state:0 stream:input]; 1155 @throw nvae; 1156 } 1157 1158 switch (alt25) { 1159 case 1 : ; 1160 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:30:8: 'if' // alt 1161 { 1162 [self matchString:@"if"]; if ( state.failed == YES ) return ; 1163 /* element() */ 1164 /* elements */ 1165 } 1166 break; 1167 case 2 : ; 1168 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:30:13: 'while' // alt 1169 { 1170 [self matchString:@"while"]; if ( state.failed == YES ) return ; 1171 /* element() */ 1172 /* elements */ 1173 } 1174 break; 1175 case 3 : ; 1176 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:30:21: 'switch' // alt 1177 { 1178 [self matchString:@"switch"]; if ( state.failed == YES ) return ; 1179 /* element() */ 1180 /* elements */ 1181 } 1182 break; 1183 case 4 : ; 1184 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:30:30: 'for' // alt 1185 { 1186 [self matchString:@"for"]; if ( state.failed == YES ) return ; 1187 /* element() */ 1188 /* elements */ 1189 } 1190 break; 1191 1192 } 1193 /* element() */ 1194 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:30:37: ( WS )? // block 1195 NSInteger alt26=2; 1196 NSInteger LA26_0 = [input LA:1]; 1197 1198 if ( ((LA26_0>='\t' && LA26_0<='\n')||LA26_0==' ') ) { 1199 alt26=1; 1200 } 1201 switch (alt26) { 1202 case 1 : ; 1203 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:30:37: WS // alt 1204 { 1205 [self mWS]; if ( state.failed == YES ) return ; 1206 /* element() */ 1207 /* elements */ 1208 } 1209 break; 1210 1211 } 1212 /* element() */ 1213 [self matchChar:'(']; if ( state.failed == YES ) return ; 1214 /* element() */ 1215 /* elements */ 1216 } 1217 1218 // token+rule list labels 1219 1220 [state setType:_type]; 1221 1222 state.channel = _channel; 1223 } 1224 @finally { 1225 // 1226 } 1227 return; 1228} 1229// $ANTLR end "STAT" 1230 1231// $ANTLR start "CALL" 1232- (void) mCALL 1233{ 1234 // 1235 // ruleScopeSetUp 1236 1237 @try { 1238 NSInteger _type = CALL; 1239 NSInteger _channel = ANTLRTokenChannelDefault; 1240 id<ANTLRToken> name=nil; 1241 1242 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:33:5: (name= QID ( WS )? '(' ) // ruleBlockSingleAlt 1243 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:33:9: name= QID ( WS )? '(' // alt 1244 { 1245 NSInteger nameStart326 = [self getIndex]; 1246 [self mQID]; if ( state.failed == YES ) return ; 1247 1248 name = [[ANTLRCommonToken newANTLRCommonToken:input Type:ANTLRTokenTypeInvalid Channel:ANTLRTokenChannelDefault Start:nameStart326 Stop:[self getIndex]-1] retain]; 1249 [name setLine:[self getLine]]; /* element() */ 1250 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:33:18: ( WS )? // block 1251 NSInteger alt27=2; 1252 NSInteger LA27_0 = [input LA:1]; 1253 1254 if ( ((LA27_0>='\t' && LA27_0<='\n')||LA27_0==' ') ) { 1255 alt27=1; 1256 } 1257 switch (alt27) { 1258 case 1 : ; 1259 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:33:18: WS // alt 1260 { 1261 [self mWS]; if ( state.failed == YES ) return ; 1262 /* element() */ 1263 /* elements */ 1264 } 1265 break; 1266 1267 } 1268 /* element() */ 1269 [self matchChar:'(']; if ( state.failed == YES ) return ; 1270 /* element() */ 1271 if ( state.backtracking == 1 ) { 1272 /*ignore if this/super */ NSLog(@"found call %@",(name!=nil?[name getText]:0)); 1273 } /* element() */ 1274 /* elements */ 1275 } 1276 1277 // token+rule list labels 1278 1279 [state setType:_type]; 1280 1281 state.channel = _channel; 1282 } 1283 @finally { 1284 // 1285 } 1286 return; 1287} 1288// $ANTLR end "CALL" 1289 1290// $ANTLR start "COMMENT" 1291- (void) mCOMMENT 1292{ 1293 // 1294 // ruleScopeSetUp 1295 1296 @try { 1297 NSInteger _type = COMMENT; 1298 NSInteger _channel = ANTLRTokenChannelDefault; 1299 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:38:5: ( '/*' ( options {greedy=false; } : . )* '*/' ) // ruleBlockSingleAlt 1300 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:38:9: '/*' ( options {greedy=false; } : . )* '*/' // alt 1301 { 1302 [self matchString:@"/*"]; if ( state.failed == YES ) return ; 1303 /* element() */ 1304 do { 1305 NSInteger alt28=2; 1306 NSInteger LA28_0 = [input LA:1]; 1307 if ( (LA28_0=='*') ) { 1308 NSInteger LA28_1 = [input LA:2]; 1309 if ( (LA28_1=='/') ) { 1310 alt28=2; 1311 } 1312 else if ( ((LA28_1>=0x0000 && LA28_1<='.')||(LA28_1>='0' && LA28_1<=0xFFFF)) ) { 1313 alt28=1; 1314 } 1315 1316 1317 } 1318 else if ( ((LA28_0>=0x0000 && LA28_0<=')')||(LA28_0>='+' && LA28_0<=0xFFFF)) ) { 1319 alt28=1; 1320 } 1321 1322 1323 switch (alt28) { 1324 case 1 : ; 1325 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:38:41: . // alt 1326 { 1327 [self matchAny]; if ( state.failed == YES ) return ; 1328 /* element() */ 1329 /* elements */ 1330 } 1331 break; 1332 1333 default : 1334 goto loop28; 1335 } 1336 } while (YES); 1337 loop28: ; 1338 /* element() */ 1339 [self matchString:@"*/"]; if ( state.failed == YES ) return ; 1340 /* element() */ 1341 if ( state.backtracking == 1 ) { 1342 NSLog(@"found comment %@", [self getText]); 1343 } /* element() */ 1344 /* elements */ 1345 } 1346 1347 // token+rule list labels 1348 1349 [state setType:_type]; 1350 1351 state.channel = _channel; 1352 } 1353 @finally { 1354 // 1355 } 1356 return; 1357} 1358// $ANTLR end "COMMENT" 1359 1360// $ANTLR start "SL_COMMENT" 1361- (void) mSL_COMMENT 1362{ 1363 // 1364 // ruleScopeSetUp 1365 1366 @try { 1367 NSInteger _type = SL_COMMENT; 1368 NSInteger _channel = ANTLRTokenChannelDefault; 1369 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:43:5: ( '//' ( options {greedy=false; } : . )* '\\n' ) // ruleBlockSingleAlt 1370 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:43:9: '//' ( options {greedy=false; } : . )* '\\n' // alt 1371 { 1372 [self matchString:@"//"]; if ( state.failed == YES ) return ; 1373 /* element() */ 1374 do { 1375 NSInteger alt29=2; 1376 NSInteger LA29_0 = [input LA:1]; 1377 if ( (LA29_0=='\n') ) { 1378 alt29=2; 1379 } 1380 else if ( ((LA29_0>=0x0000 && LA29_0<='\t')||(LA29_0>=0x000B && LA29_0<=0xFFFF)) ) { 1381 alt29=1; 1382 } 1383 1384 1385 switch (alt29) { 1386 case 1 : ; 1387 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:43:41: . // alt 1388 { 1389 [self matchAny]; if ( state.failed == YES ) return ; 1390 /* element() */ 1391 /* elements */ 1392 } 1393 break; 1394 1395 default : 1396 goto loop29; 1397 } 1398 } while (YES); 1399 loop29: ; 1400 /* element() */ 1401 [self matchChar:'\n']; if ( state.failed == YES ) return ; 1402 /* element() */ 1403 if ( state.backtracking == 1 ) { 1404 NSLog(@"found // comment %@", [self getText]); 1405 } /* element() */ 1406 /* elements */ 1407 } 1408 1409 // token+rule list labels 1410 1411 [state setType:_type]; 1412 1413 state.channel = _channel; 1414 } 1415 @finally { 1416 // 1417 } 1418 return; 1419} 1420// $ANTLR end "SL_COMMENT" 1421 1422// $ANTLR start "STRING" 1423- (void) mSTRING 1424{ 1425 // 1426 // ruleScopeSetUp 1427 1428 @try { 1429 NSInteger _type = STRING; 1430 NSInteger _channel = ANTLRTokenChannelDefault; 1431 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:48:2: ( '\"' ( options {greedy=false; } : ESC | . )* '\"' ) // ruleBlockSingleAlt 1432 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:48:4: '\"' ( options {greedy=false; } : ESC | . )* '\"' // alt 1433 { 1434 [self matchChar:'"']; if ( state.failed == YES ) return ; 1435 /* element() */ 1436 do { 1437 NSInteger alt30=3; 1438 NSInteger LA30_0 = [input LA:1]; 1439 if ( (LA30_0=='"') ) { 1440 alt30=3; 1441 } 1442 else if ( (LA30_0=='\\') ) { 1443 NSInteger LA30_2 = [input LA:2]; 1444 if ( (LA30_2=='"') ) { 1445 alt30=1; 1446 } 1447 else if ( (LA30_2=='\\') ) { 1448 alt30=1; 1449 } 1450 else if ( (LA30_2=='\'') ) { 1451 alt30=1; 1452 } 1453 else if ( ((LA30_2>=0x0000 && LA30_2<='!')||(LA30_2>='#' && LA30_2<='&')||(LA30_2>='(' && LA30_2<='[')||(LA30_2>=']' && LA30_2<=0xFFFF)) ) { 1454 alt30=2; 1455 } 1456 1457 1458 } 1459 else if ( ((LA30_0>=0x0000 && LA30_0<='!')||(LA30_0>='#' && LA30_0<='[')||(LA30_0>=']' && LA30_0<=0xFFFF)) ) { 1460 alt30=2; 1461 } 1462 1463 1464 switch (alt30) { 1465 case 1 : ; 1466 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:48:34: ESC // alt 1467 { 1468 [self mESC]; if ( state.failed == YES ) return ; 1469 /* element() */ 1470 /* elements */ 1471 } 1472 break; 1473 case 2 : ; 1474 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:48:40: . // alt 1475 { 1476 [self matchAny]; if ( state.failed == YES ) return ; 1477 /* element() */ 1478 /* elements */ 1479 } 1480 break; 1481 1482 default : 1483 goto loop30; 1484 } 1485 } while (YES); 1486 loop30: ; 1487 /* element() */ 1488 [self matchChar:'"']; if ( state.failed == YES ) return ; 1489 /* element() */ 1490 /* elements */ 1491 } 1492 1493 // token+rule list labels 1494 1495 [state setType:_type]; 1496 1497 state.channel = _channel; 1498 } 1499 @finally { 1500 // 1501 } 1502 return; 1503} 1504// $ANTLR end "STRING" 1505 1506// $ANTLR start "CHAR" 1507- (void) mCHAR 1508{ 1509 // 1510 // ruleScopeSetUp 1511 1512 @try { 1513 NSInteger _type = CHAR; 1514 NSInteger _channel = ANTLRTokenChannelDefault; 1515 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:52:2: ( '\\'' ( options {greedy=false; } : ESC | . )* '\\'' ) // ruleBlockSingleAlt 1516 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:52:4: '\\'' ( options {greedy=false; } : ESC | . )* '\\'' // alt 1517 { 1518 [self matchChar:'\'']; if ( state.failed == YES ) return ; 1519 /* element() */ 1520 do { 1521 NSInteger alt31=3; 1522 NSInteger LA31_0 = [input LA:1]; 1523 if ( (LA31_0=='\'') ) { 1524 alt31=3; 1525 } 1526 else if ( (LA31_0=='\\') ) { 1527 NSInteger LA31_2 = [input LA:2]; 1528 if ( (LA31_2=='\'') ) { 1529 alt31=1; 1530 } 1531 else if ( (LA31_2=='\\') ) { 1532 alt31=1; 1533 } 1534 else if ( (LA31_2=='"') ) { 1535 alt31=1; 1536 } 1537 else if ( ((LA31_2>=0x0000 && LA31_2<='!')||(LA31_2>='#' && LA31_2<='&')||(LA31_2>='(' && LA31_2<='[')||(LA31_2>=']' && LA31_2<=0xFFFF)) ) { 1538 alt31=2; 1539 } 1540 1541 1542 } 1543 else if ( ((LA31_0>=0x0000 && LA31_0<='&')||(LA31_0>='(' && LA31_0<='[')||(LA31_0>=']' && LA31_0<=0xFFFF)) ) { 1544 alt31=2; 1545 } 1546 1547 1548 switch (alt31) { 1549 case 1 : ; 1550 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:52:35: ESC // alt 1551 { 1552 [self mESC]; if ( state.failed == YES ) return ; 1553 /* element() */ 1554 /* elements */ 1555 } 1556 break; 1557 case 2 : ; 1558 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:52:41: . // alt 1559 { 1560 [self matchAny]; if ( state.failed == YES ) return ; 1561 /* element() */ 1562 /* elements */ 1563 } 1564 break; 1565 1566 default : 1567 goto loop31; 1568 } 1569 } while (YES); 1570 loop31: ; 1571 /* element() */ 1572 [self matchChar:'\'']; if ( state.failed == YES ) return ; 1573 /* element() */ 1574 /* elements */ 1575 } 1576 1577 // token+rule list labels 1578 1579 [state setType:_type]; 1580 1581 state.channel = _channel; 1582 } 1583 @finally { 1584 // 1585 } 1586 return; 1587} 1588// $ANTLR end "CHAR" 1589 1590// $ANTLR start "WS" 1591- (void) mWS 1592{ 1593 // 1594 // ruleScopeSetUp 1595 1596 @try { 1597 NSInteger _type = WS; 1598 NSInteger _channel = ANTLRTokenChannelDefault; 1599 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:55:5: ( ( ' ' | '\\t' | '\\n' )+ ) // ruleBlockSingleAlt 1600 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:55:9: ( ' ' | '\\t' | '\\n' )+ // alt 1601 { 1602 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:55:9: ( ' ' | '\\t' | '\\n' )+ // positiveClosureBlock 1603 NSInteger cnt32=0; 1604 do { 1605 NSInteger alt32=2; 1606 NSInteger LA32_0 = [input LA:1]; 1607 if ( ((LA32_0>='\t' && LA32_0<='\n')||LA32_0==' ') ) { 1608 alt32=1; 1609 } 1610 1611 1612 switch (alt32) { 1613 case 1 : ; 1614 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g: // alt 1615 { 1616 if ((([input LA:1] >= '\t') && ([input LA:1] <= '\n'))||[input LA:1] == ' ') { 1617 [input consume]; 1618 state.failed = NO; 1619 1620 } else { 1621 if ( state.backtracking > 0 ) { state.failed = YES; return ; } 1622 ANTLRMismatchedSetException *mse = [ANTLRMismatchedSetException exceptionWithSet:nil stream:input]; 1623 [self recover:mse]; 1624 @throw mse;} 1625 /* element() */ 1626 /* elements */ 1627 } 1628 break; 1629 1630 default : 1631 if ( cnt32 >= 1 ) 1632 goto loop32; 1633 if ( state.backtracking > 0 ) { state.failed = YES; return ; } ANTLREarlyExitException *eee = [ANTLREarlyExitException exceptionWithStream:input decisionNumber:32]; 1634 @throw eee; 1635 } 1636 cnt32++; 1637 } while (YES); 1638 loop32: ; 1639 /* element() */ 1640 /* elements */ 1641 } 1642 1643 // token+rule list labels 1644 1645 [state setType:_type]; 1646 1647 state.channel = _channel; 1648 } 1649 @finally { 1650 // 1651 } 1652 return; 1653} 1654// $ANTLR end "WS" 1655 1656// $ANTLR start "QID" 1657- (void) mQID 1658{ 1659 // 1660 // ruleScopeSetUp 1661 1662 @try { 1663 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:59:5: ( ID ( '.' ID )* ) // ruleBlockSingleAlt 1664 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:59:7: ID ( '.' ID )* // alt 1665 { 1666 [self mID]; if ( state.failed == YES ) return ; 1667 /* element() */ 1668 do { 1669 NSInteger alt33=2; 1670 NSInteger LA33_0 = [input LA:1]; 1671 if ( (LA33_0=='.') ) { 1672 alt33=1; 1673 } 1674 1675 1676 switch (alt33) { 1677 case 1 : ; 1678 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:59:11: '.' ID // alt 1679 { 1680 [self matchChar:'.']; if ( state.failed == YES ) return ; 1681 /* element() */ 1682 [self mID]; if ( state.failed == YES ) return ; 1683 /* element() */ 1684 /* elements */ 1685 } 1686 break; 1687 1688 default : 1689 goto loop33; 1690 } 1691 } while (YES); 1692 loop33: ; 1693 /* element() */ 1694 /* elements */ 1695 } 1696 1697 } 1698 @finally { 1699 // 1700 } 1701 return; 1702} 1703// $ANTLR end "QID" 1704 1705// $ANTLR start "QIDStar" 1706- (void) mQIDStar 1707{ 1708 // 1709 // ruleScopeSetUp 1710 1711 @try { 1712 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:68:2: ( ID ( '.' ID )* ( '.*' )? ) // ruleBlockSingleAlt 1713 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:68:4: ID ( '.' ID )* ( '.*' )? // alt 1714 { 1715 [self mID]; if ( state.failed == YES ) return ; 1716 /* element() */ 1717 do { 1718 NSInteger alt34=2; 1719 NSInteger LA34_0 = [input LA:1]; 1720 if ( (LA34_0=='.') ) { 1721 NSInteger LA34_1 = [input LA:2]; 1722 if ( ((LA34_1>='A' && LA34_1<='Z')||LA34_1=='_'||(LA34_1>='a' && LA34_1<='z')) ) { 1723 alt34=1; 1724 } 1725 1726 1727 } 1728 1729 1730 switch (alt34) { 1731 case 1 : ; 1732 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:68:8: '.' ID // alt 1733 { 1734 [self matchChar:'.']; if ( state.failed == YES ) return ; 1735 /* element() */ 1736 [self mID]; if ( state.failed == YES ) return ; 1737 /* element() */ 1738 /* elements */ 1739 } 1740 break; 1741 1742 default : 1743 goto loop34; 1744 } 1745 } while (YES); 1746 loop34: ; 1747 /* element() */ 1748 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:68:17: ( '.*' )? // block 1749 NSInteger alt35=2; 1750 NSInteger LA35_0 = [input LA:1]; 1751 1752 if ( (LA35_0=='.') ) { 1753 alt35=1; 1754 } 1755 switch (alt35) { 1756 case 1 : ; 1757 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:68:17: '.*' // alt 1758 { 1759 [self matchString:@".*"]; if ( state.failed == YES ) return ; 1760 /* element() */ 1761 /* elements */ 1762 } 1763 break; 1764 1765 } 1766 /* element() */ 1767 /* elements */ 1768 } 1769 1770 } 1771 @finally { 1772 // 1773 } 1774 return; 1775} 1776// $ANTLR end "QIDStar" 1777 1778// $ANTLR start "TYPE" 1779- (void) mTYPE 1780{ 1781 // 1782 // ruleScopeSetUp 1783 1784 @try { 1785 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:72:5: ( QID ( '[]' )? ) // ruleBlockSingleAlt 1786 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:72:9: QID ( '[]' )? // alt 1787 { 1788 [self mQID]; if ( state.failed == YES ) return ; 1789 /* element() */ 1790 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:72:13: ( '[]' )? // block 1791 NSInteger alt36=2; 1792 NSInteger LA36_0 = [input LA:1]; 1793 1794 if ( (LA36_0=='[') ) { 1795 alt36=1; 1796 } 1797 switch (alt36) { 1798 case 1 : ; 1799 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:72:13: '[]' // alt 1800 { 1801 [self matchString:@"[]"]; if ( state.failed == YES ) return ; 1802 /* element() */ 1803 /* elements */ 1804 } 1805 break; 1806 1807 } 1808 /* element() */ 1809 /* elements */ 1810 } 1811 1812 } 1813 @finally { 1814 // 1815 } 1816 return; 1817} 1818// $ANTLR end "TYPE" 1819 1820// $ANTLR start "ARG" 1821- (void) mARG 1822{ 1823 // 1824 // ruleScopeSetUp 1825 1826 @try { 1827 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:76:5: ( TYPE WS ID ) // ruleBlockSingleAlt 1828 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:76:9: TYPE WS ID // alt 1829 { 1830 [self mTYPE]; if ( state.failed == YES ) return ; 1831 /* element() */ 1832 [self mWS]; if ( state.failed == YES ) return ; 1833 /* element() */ 1834 [self mID]; if ( state.failed == YES ) return ; 1835 /* element() */ 1836 /* elements */ 1837 } 1838 1839 } 1840 @finally { 1841 // 1842 } 1843 return; 1844} 1845// $ANTLR end "ARG" 1846 1847// $ANTLR start "ID" 1848- (void) mID 1849{ 1850 // 1851 // ruleScopeSetUp 1852 1853 @try { 1854 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:80:5: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) // ruleBlockSingleAlt 1855 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:80:9: ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* // alt 1856 { 1857 if ((([input LA:1] >= 'A') && ([input LA:1] <= 'Z'))||[input LA:1] == '_'||(([input LA:1] >= 'a') && ([input LA:1] <= 'z'))) { 1858 [input consume]; 1859 state.failed = NO; 1860 1861 } else { 1862 if ( state.backtracking > 0 ) { state.failed = YES; return ; } 1863 ANTLRMismatchedSetException *mse = [ANTLRMismatchedSetException exceptionWithSet:nil stream:input]; 1864 [self recover:mse]; 1865 @throw mse;} 1866 /* element() */ 1867 do { 1868 NSInteger alt37=2; 1869 NSInteger LA37_0 = [input LA:1]; 1870 if ( ((LA37_0>='0' && LA37_0<='9')||(LA37_0>='A' && LA37_0<='Z')||LA37_0=='_'||(LA37_0>='a' && LA37_0<='z')) ) { 1871 alt37=1; 1872 } 1873 1874 1875 switch (alt37) { 1876 case 1 : ; 1877 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g: // alt 1878 { 1879 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'))) { 1880 [input consume]; 1881 state.failed = NO; 1882 1883 } else { 1884 if ( state.backtracking > 0 ) { state.failed = YES; return ; } 1885 ANTLRMismatchedSetException *mse = [ANTLRMismatchedSetException exceptionWithSet:nil stream:input]; 1886 [self recover:mse]; 1887 @throw mse;} 1888 /* element() */ 1889 /* elements */ 1890 } 1891 break; 1892 1893 default : 1894 goto loop37; 1895 } 1896 } while (YES); 1897 loop37: ; 1898 /* element() */ 1899 /* elements */ 1900 } 1901 1902 } 1903 @finally { 1904 // 1905 } 1906 return; 1907} 1908// $ANTLR end "ID" 1909 1910// $ANTLR start "ESC" 1911- (void) mESC 1912{ 1913 // 1914 // ruleScopeSetUp 1915 1916 @try { 1917 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:84:5: ( '\\\\' ( '\"' | '\\'' | '\\\\' ) ) // ruleBlockSingleAlt 1918 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:84:7: '\\\\' ( '\"' | '\\'' | '\\\\' ) // alt 1919 { 1920 [self matchChar:'\\']; if ( state.failed == YES ) return ; 1921 /* element() */ 1922 if ([input LA:1] == '"'||[input LA:1] == '\''||[input LA:1] == '\\') { 1923 [input consume]; 1924 state.failed = NO; 1925 1926 } else { 1927 if ( state.backtracking > 0 ) { state.failed = YES; return ; } 1928 ANTLRMismatchedSetException *mse = [ANTLRMismatchedSetException exceptionWithSet:nil stream:input]; 1929 [self recover:mse]; 1930 @throw mse;} 1931 /* element() */ 1932 /* elements */ 1933 } 1934 1935 } 1936 @finally { 1937 // 1938 } 1939 return; 1940} 1941// $ANTLR end "ESC" 1942 1943- (void) mTokens 1944{ 1945 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:39: ( IMPORT | RETURN | CLASS | METHOD | FIELD | STAT | CALL | COMMENT | SL_COMMENT | STRING | CHAR | WS ) //ruleblock 1946 NSInteger alt38=12; 1947 alt38 = [dfa38 predict:input]; 1948 switch (alt38) { 1949 case 1 : ; 1950 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:41: IMPORT // alt 1951 { 1952 [self mIMPORT]; if ( state.failed == YES ) return ; 1953 /* element() */ 1954 /* elements */ 1955 } 1956 break; 1957 case 2 : ; 1958 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:48: RETURN // alt 1959 { 1960 [self mRETURN]; if ( state.failed == YES ) return ; 1961 /* element() */ 1962 /* elements */ 1963 } 1964 break; 1965 case 3 : ; 1966 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:55: CLASS // alt 1967 { 1968 [self mCLASS]; if ( state.failed == YES ) return ; 1969 /* element() */ 1970 /* elements */ 1971 } 1972 break; 1973 case 4 : ; 1974 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:61: METHOD // alt 1975 { 1976 [self mMETHOD]; if ( state.failed == YES ) return ; 1977 /* element() */ 1978 /* elements */ 1979 } 1980 break; 1981 case 5 : ; 1982 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:68: FIELD // alt 1983 { 1984 [self mFIELD]; if ( state.failed == YES ) return ; 1985 /* element() */ 1986 /* elements */ 1987 } 1988 break; 1989 case 6 : ; 1990 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:74: STAT // alt 1991 { 1992 [self mSTAT]; if ( state.failed == YES ) return ; 1993 /* element() */ 1994 /* elements */ 1995 } 1996 break; 1997 case 7 : ; 1998 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:79: CALL // alt 1999 { 2000 [self mCALL]; if ( state.failed == YES ) return ; 2001 /* element() */ 2002 /* elements */ 2003 } 2004 break; 2005 case 8 : ; 2006 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:84: COMMENT // alt 2007 { 2008 [self mCOMMENT]; if ( state.failed == YES ) return ; 2009 /* element() */ 2010 /* elements */ 2011 } 2012 break; 2013 case 9 : ; 2014 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:92: SL_COMMENT // alt 2015 { 2016 [self mSL_COMMENT]; if ( state.failed == YES ) return ; 2017 /* element() */ 2018 /* elements */ 2019 } 2020 break; 2021 case 10 : ; 2022 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:103: STRING // alt 2023 { 2024 [self mSTRING]; if ( state.failed == YES ) return ; 2025 /* element() */ 2026 /* elements */ 2027 } 2028 break; 2029 case 11 : ; 2030 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:110: CHAR // alt 2031 { 2032 [self mCHAR]; if ( state.failed == YES ) return ; 2033 /* element() */ 2034 /* elements */ 2035 } 2036 break; 2037 case 12 : ; 2038 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:115: WS // alt 2039 { 2040 [self mWS]; if ( state.failed == YES ) return ; 2041 /* element() */ 2042 /* elements */ 2043 } 2044 break; 2045 2046 } 2047 2048} 2049 2050// $ANTLR start synpred1_Fuzzy_fragment 2051- (void) synpred1_Fuzzy_fragment 2052{ 2053 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:41: ( IMPORT ) // ruleBlockSingleAlt 2054 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:41: IMPORT // alt 2055 { 2056 [self mIMPORT]; if ( state.failed == YES ) return ; 2057 /* element() */ 2058 /* elements */ 2059 } 2060} // $ANTLR end synpred1_Fuzzy_fragment 2061 2062// $ANTLR start synpred2_Fuzzy_fragment 2063- (void) synpred2_Fuzzy_fragment 2064{ 2065 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:48: ( RETURN ) // ruleBlockSingleAlt 2066 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:48: RETURN // alt 2067 { 2068 [self mRETURN]; if ( state.failed == YES ) return ; 2069 /* element() */ 2070 /* elements */ 2071 } 2072} // $ANTLR end synpred2_Fuzzy_fragment 2073 2074// $ANTLR start synpred3_Fuzzy_fragment 2075- (void) synpred3_Fuzzy_fragment 2076{ 2077 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:55: ( CLASS ) // ruleBlockSingleAlt 2078 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:55: CLASS // alt 2079 { 2080 [self mCLASS]; if ( state.failed == YES ) return ; 2081 /* element() */ 2082 /* elements */ 2083 } 2084} // $ANTLR end synpred3_Fuzzy_fragment 2085 2086// $ANTLR start synpred4_Fuzzy_fragment 2087- (void) synpred4_Fuzzy_fragment 2088{ 2089 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:61: ( METHOD ) // ruleBlockSingleAlt 2090 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:61: METHOD // alt 2091 { 2092 [self mMETHOD]; if ( state.failed == YES ) return ; 2093 /* element() */ 2094 /* elements */ 2095 } 2096} // $ANTLR end synpred4_Fuzzy_fragment 2097 2098// $ANTLR start synpred5_Fuzzy_fragment 2099- (void) synpred5_Fuzzy_fragment 2100{ 2101 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:68: ( FIELD ) // ruleBlockSingleAlt 2102 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:68: FIELD // alt 2103 { 2104 [self mFIELD]; if ( state.failed == YES ) return ; 2105 /* element() */ 2106 /* elements */ 2107 } 2108} // $ANTLR end synpred5_Fuzzy_fragment 2109 2110// $ANTLR start synpred6_Fuzzy_fragment 2111- (void) synpred6_Fuzzy_fragment 2112{ 2113 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:74: ( STAT ) // ruleBlockSingleAlt 2114 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:74: STAT // alt 2115 { 2116 [self mSTAT]; if ( state.failed == YES ) return ; 2117 /* element() */ 2118 /* elements */ 2119 } 2120} // $ANTLR end synpred6_Fuzzy_fragment 2121 2122// $ANTLR start synpred7_Fuzzy_fragment 2123- (void) synpred7_Fuzzy_fragment 2124{ 2125 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:79: ( CALL ) // ruleBlockSingleAlt 2126 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:79: CALL // alt 2127 { 2128 [self mCALL]; if ( state.failed == YES ) return ; 2129 /* element() */ 2130 /* elements */ 2131 } 2132} // $ANTLR end synpred7_Fuzzy_fragment 2133 2134// $ANTLR start synpred8_Fuzzy_fragment 2135- (void) synpred8_Fuzzy_fragment 2136{ 2137 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:84: ( COMMENT ) // ruleBlockSingleAlt 2138 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:84: COMMENT // alt 2139 { 2140 [self mCOMMENT]; if ( state.failed == YES ) return ; 2141 /* element() */ 2142 /* elements */ 2143 } 2144} // $ANTLR end synpred8_Fuzzy_fragment 2145 2146// $ANTLR start synpred9_Fuzzy_fragment 2147- (void) synpred9_Fuzzy_fragment 2148{ 2149 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:92: ( SL_COMMENT ) // ruleBlockSingleAlt 2150 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/fuzzy/Fuzzy.g:1:92: SL_COMMENT // alt 2151 { 2152 [self mSL_COMMENT]; if ( state.failed == YES ) return ; 2153 /* element() */ 2154 /* elements */ 2155 } 2156} // $ANTLR end synpred9_Fuzzy_fragment 2157 2158@end // end of Fuzzy implementation // line 397 2159 2160/* End of code 2161 * ============================================================================= 2162 */ 2163