1 /** \file 2 * This OBJC source file was generated by $ANTLR version 3.2 Aug 19, 2010 17:16:04 3 * 4 * - From the grammar source file : /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g 5 * - On : 2010-08-19 17:16:47 6 * - for the parser : SymbolTableParserParser * 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 19, 2010 17:16:04 /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g 2010-08-19 17:16:47 41 42 /* ----------------------------------------- 43 * Include the ANTLR3 generated header file. 44 */ 45 #import "SymbolTableParser.h" 46 /* ----------------------------------------- */ 47 48 49 /* ============================================================================= */ 50 51 /* ============================================================================= 52 * Start of recognizer 53 */ 54 55 56 57 #pragma mark Bitsets 58 static ANTLRBitSet *FOLLOW_globals_in_prog44; 59 60 const unsigned long long FOLLOW_globals_in_prog44_data[] = { 0x0000000000000082LL}; 61 62 static ANTLRBitSet *FOLLOW_method_in_prog47; 63 64 const unsigned long long FOLLOW_method_in_prog47_data[] = { 0x0000000000000082LL}; 65 66 static ANTLRBitSet *FOLLOW_decl_in_globals79; 67 68 const unsigned long long FOLLOW_decl_in_globals79_data[] = { 0x0000000000004002LL}; 69 70 static ANTLRBitSet *FOLLOW_7_in_method110; 71 72 const unsigned long long FOLLOW_7_in_method110_data[] = { 0x0000000000000010LL}; 73 74 static ANTLRBitSet *FOLLOW_ID_in_method112; 75 76 const unsigned long long FOLLOW_ID_in_method112_data[] = { 0x0000000000000100LL}; 77 78 static ANTLRBitSet *FOLLOW_8_in_method114; 79 80 const unsigned long long FOLLOW_8_in_method114_data[] = { 0x0000000000000200LL}; 81 82 static ANTLRBitSet *FOLLOW_9_in_method116; 83 84 const unsigned long long FOLLOW_9_in_method116_data[] = { 0x0000000000000400LL}; 85 86 static ANTLRBitSet *FOLLOW_block_in_method118; 87 88 const unsigned long long FOLLOW_block_in_method118_data[] = { 0x0000000000000002LL}; 89 90 static ANTLRBitSet *FOLLOW_10_in_block147; 91 92 const unsigned long long FOLLOW_10_in_block147_data[] = { 0x0000000000004C10LL}; 93 94 static ANTLRBitSet *FOLLOW_decl_in_block150; 95 96 const unsigned long long FOLLOW_decl_in_block150_data[] = { 0x0000000000004C10LL}; 97 98 static ANTLRBitSet *FOLLOW_stat_in_block155; 99 100 const unsigned long long FOLLOW_stat_in_block155_data[] = { 0x0000000000000C10LL}; 101 102 static ANTLRBitSet *FOLLOW_11_in_block159; 103 104 const unsigned long long FOLLOW_11_in_block159_data[] = { 0x0000000000000002LL}; 105 106 static ANTLRBitSet *FOLLOW_ID_in_stat183; 107 108 const unsigned long long FOLLOW_ID_in_stat183_data[] = { 0x0000000000001000LL}; 109 110 static ANTLRBitSet *FOLLOW_12_in_stat185; 111 112 const unsigned long long FOLLOW_12_in_stat185_data[] = { 0x0000000000000020LL}; 113 114 static ANTLRBitSet *FOLLOW_INT_in_stat187; 115 116 const unsigned long long FOLLOW_INT_in_stat187_data[] = { 0x0000000000002000LL}; 117 118 static ANTLRBitSet *FOLLOW_13_in_stat189; 119 120 const unsigned long long FOLLOW_13_in_stat189_data[] = { 0x0000000000000002LL}; 121 122 static ANTLRBitSet *FOLLOW_block_in_stat199; 123 124 const unsigned long long FOLLOW_block_in_stat199_data[] = { 0x0000000000000002LL}; 125 126 static ANTLRBitSet *FOLLOW_14_in_decl213; 127 128 const unsigned long long FOLLOW_14_in_decl213_data[] = { 0x0000000000000010LL}; 129 130 static ANTLRBitSet *FOLLOW_ID_in_decl215; 131 132 const unsigned long long FOLLOW_ID_in_decl215_data[] = { 0x0000000000002000LL}; 133 134 static ANTLRBitSet *FOLLOW_13_in_decl217; 135 136 const unsigned long long FOLLOW_13_in_decl217_data[] = { 0x0000000000000002LL}; 137 138 139 140 #pragma mark Dynamic Global Scopes 141 @implementation Symbols_Scope /* globalAttributeScopeImpl */ 142 /* start of synthesize -- OBJC-Line 1750 */ 143 144 @synthesize names; 145 + (Symbols_Scope *)newSymbols_Scope 146 { 147 return [[[Symbols_Scope alloc] init] retain]; 148 } 149 /* start of iterate get and set functions */ 150 151 - (ANTLRHashMap *)getnames { return( names ); } 152 153 - (void)setnames:(ANTLRHashMap *)aVal { names = aVal; } 154 155 156 157 /* End of iterate get and set functions */ 158 159 @end 160 161 #pragma mark Dynamic Rule Scopes 162 163 #pragma mark Rule return scopes start 164 165 @implementation SymbolTableParser // line 610 166 167 + (void) initialize 168 { 169 FOLLOW_globals_in_prog44 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_globals_in_prog44_data Count:(NSUInteger)1] retain]; 170 FOLLOW_method_in_prog47 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_method_in_prog47_data Count:(NSUInteger)1] retain]; 171 FOLLOW_decl_in_globals79 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_decl_in_globals79_data Count:(NSUInteger)1] retain]; 172 FOLLOW_7_in_method110 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_7_in_method110_data Count:(NSUInteger)1] retain]; 173 FOLLOW_ID_in_method112 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_ID_in_method112_data Count:(NSUInteger)1] retain]; 174 FOLLOW_8_in_method114 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_8_in_method114_data Count:(NSUInteger)1] retain]; 175 FOLLOW_9_in_method116 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_9_in_method116_data Count:(NSUInteger)1] retain]; 176 FOLLOW_block_in_method118 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_block_in_method118_data Count:(NSUInteger)1] retain]; 177 FOLLOW_10_in_block147 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_10_in_block147_data Count:(NSUInteger)1] retain]; 178 FOLLOW_decl_in_block150 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_decl_in_block150_data Count:(NSUInteger)1] retain]; 179 FOLLOW_stat_in_block155 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_stat_in_block155_data Count:(NSUInteger)1] retain]; 180 FOLLOW_11_in_block159 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_11_in_block159_data Count:(NSUInteger)1] retain]; 181 FOLLOW_ID_in_stat183 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_ID_in_stat183_data Count:(NSUInteger)1] retain]; 182 FOLLOW_12_in_stat185 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_12_in_stat185_data Count:(NSUInteger)1] retain]; 183 FOLLOW_INT_in_stat187 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_INT_in_stat187_data Count:(NSUInteger)1] retain]; 184 FOLLOW_13_in_stat189 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_13_in_stat189_data Count:(NSUInteger)1] retain]; 185 FOLLOW_block_in_stat199 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_block_in_stat199_data Count:(NSUInteger)1] retain]; 186 FOLLOW_14_in_decl213 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_14_in_decl213_data Count:(NSUInteger)1] retain]; 187 FOLLOW_ID_in_decl215 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_ID_in_decl215_data Count:(NSUInteger)1] retain]; 188 FOLLOW_13_in_decl217 = [[ANTLRBitSet newANTLRBitSetWithBits:(const unsigned long long *)FOLLOW_13_in_decl217_data Count:(NSUInteger)1] retain]; 189 190 [ANTLRBaseRecognizer setTokenNames:[[[NSArray alloc] initWithObjects:@"<invalid>", @"<EOR>", @"<DOWN>", @"<UP>", 191 @"ID", @"INT", @"WS", @"'method'", @"'('", @"')'", @"'{'", @"'}'", @"'='", 192 @"';'", @"'int'", nil] retain]]; 193 } 194 195 + (SymbolTableParser *)newSymbolTableParser:(id<ANTLRTokenStream>)aStream 196 { 197 return [[SymbolTableParser alloc] initWithTokenStream:aStream]; 198 199 } 200 201 - (id) initWithTokenStream:(id<ANTLRTokenStream>)aStream 202 { 203 if ((self = [super initWithTokenStream:aStream State:[[ANTLRRecognizerSharedState newANTLRRecognizerSharedStateWithRuleLen:6+1] retain]]) != nil) { 204 205 206 (Symbols_Scope *)Symbols_scope = [Symbols_Scope newSymbols_Scope]; 207 208 // start of actions-actionScope-init 209 210 level = 0; 211 212 // start of init 213 } 214 return self; 215 } 216 217 - (void) dealloc 218 { 219 [Symbols_scope release]; 220 [super dealloc]; 221 } 222 // start actions.actionScope.methods 223 // start methods() 224 // start rules 225 /* 226 * $ANTLR start prog 227 * /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:25:1: prog : globals ( method )* ; 228 */ 229 - (void) prog 230 { 231 // ruleScopeSetUp 232 233 @try { 234 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:25:5: ( globals ( method )* ) // ruleBlockSingleAlt 235 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:25:9: globals ( method )* // alt 236 { 237 [self pushFollow:FOLLOW_globals_in_prog44]; 238 [self globals]; 239 [self popFollow]; 240 241 /* element() */ 242 do { 243 NSInteger alt1=2; 244 NSInteger LA1_0 = [input LA:1]; 245 if ( (LA1_0==7) ) { 246 alt1=1; 247 } 248 249 250 switch (alt1) { 251 case 1 : ; 252 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:25:18: method // alt 253 { 254 [self pushFollow:FOLLOW_method_in_prog47]; 255 [self method]; 256 [self popFollow]; 257 258 /* element() */ 259 /* elements */ 260 } 261 break; 262 263 default : 264 goto loop1; 265 } 266 } while (YES); 267 loop1: ; 268 /* element() */ 269 /* elements */ 270 } 271 272 // token+rule list labels 273 274 } 275 @catch (ANTLRRecognitionException *re) { 276 [self reportError:re]; 277 [self recover:input Exception:re]; 278 } @finally { 279 } 280 return ; 281 } 282 /* $ANTLR end prog */ 283 /* 284 * $ANTLR start globals 285 * /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:28:1: globals : ( decl )* ; 286 */ 287 - (void) globals 288 { 289 // ruleScopeSetUp 290 gStack = [ANTLRSymbolStack newANTLRSymbolStackWithLen:30]; 291 Symbols_scope = [[Symbols_Scope newSymbols_Scope] retain]; 292 [gStack push:Symbols_scope]; 293 294 295 level++; 296 /* scopeSetAttributeRef */ 297 ((Symbols_Scope *)[gStack peek]).names = [ANTLRHashMap newANTLRHashMapWithLen:101]; 298 299 @try { 300 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:34:5: ( ( decl )* ) // ruleBlockSingleAlt 301 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:34:9: ( decl )* // alt 302 { 303 do { 304 NSInteger alt2=2; 305 NSInteger LA2_0 = [input LA:1]; 306 if ( (LA2_0==14) ) { 307 alt2=1; 308 } 309 310 311 switch (alt2) { 312 case 1 : ; 313 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:34:10: decl // alt 314 { 315 [self pushFollow:FOLLOW_decl_in_globals79]; 316 [self decl]; 317 [self popFollow]; 318 319 /* element() */ 320 /* elements */ 321 } 322 break; 323 324 default : 325 goto loop2; 326 } 327 } while (YES); 328 loop2: ; 329 /* element() */ 330 331 NSLog(@"globals: %@", /* scopeAttributeRef */ 332 ((Symbols_Scope *)[gStack peek]).names); 333 level--; 334 /* element() */ 335 /* elements */ 336 } 337 338 // token+rule list labels 339 340 } 341 @catch (ANTLRRecognitionException *re) { 342 [self reportError:re]; 343 [self recover:input Exception:re]; 344 } @finally { 345 [gStack pop]; 346 347 } 348 return ; 349 } 350 /* $ANTLR end globals */ 351 /* 352 * $ANTLR start method 353 * /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:41:1: method : 'method' ID '(' ')' block ; 354 */ 355 - (void) method 356 { 357 // ruleScopeSetUp 358 359 @try { 360 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:42:5: ( 'method' ID '(' ')' block ) // ruleBlockSingleAlt 361 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:42:9: 'method' ID '(' ')' block // alt 362 { 363 [self match:input TokenType:7 Follow:FOLLOW_7_in_method110]; /* element() */ 364 [self match:input TokenType:ID Follow:FOLLOW_ID_in_method112]; /* element() */ 365 [self match:input TokenType:8 Follow:FOLLOW_8_in_method114]; /* element() */ 366 [self match:input TokenType:9 Follow:FOLLOW_9_in_method116]; /* element() */ 367 [self pushFollow:FOLLOW_block_in_method118]; 368 [self block]; 369 [self popFollow]; 370 371 /* element() */ 372 /* elements */ 373 } 374 375 // token+rule list labels 376 377 } 378 @catch (ANTLRRecognitionException *re) { 379 [self reportError:re]; 380 [self recover:input Exception:re]; 381 } @finally { 382 } 383 return ; 384 } 385 /* $ANTLR end method */ 386 /* 387 * $ANTLR start block 388 * /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:45:1: block : '{' ( decl )* ( stat )* '}' ; 389 */ 390 - (void) block 391 { 392 // ruleScopeSetUp 393 gStack = [ANTLRSymbolStack newANTLRSymbolStackWithLen:30]; 394 Symbols_scope = [[Symbols_Scope newSymbols_Scope] retain]; 395 [gStack push:Symbols_scope]; 396 397 398 level++; 399 /* scopeSetAttributeRef */ 400 ((Symbols_Scope *)[gStack peek]).names = [ANTLRHashMap newANTLRHashMapWithLen:101]; 401 402 @try { 403 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:51:5: ( '{' ( decl )* ( stat )* '}' ) // ruleBlockSingleAlt 404 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:51:9: '{' ( decl )* ( stat )* '}' // alt 405 { 406 [self match:input TokenType:10 Follow:FOLLOW_10_in_block147]; /* element() */ 407 do { 408 NSInteger alt3=2; 409 NSInteger LA3_0 = [input LA:1]; 410 if ( (LA3_0==14) ) { 411 alt3=1; 412 } 413 414 415 switch (alt3) { 416 case 1 : ; 417 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:51:14: decl // alt 418 { 419 [self pushFollow:FOLLOW_decl_in_block150]; 420 [self decl]; 421 [self popFollow]; 422 423 /* element() */ 424 /* elements */ 425 } 426 break; 427 428 default : 429 goto loop3; 430 } 431 } while (YES); 432 loop3: ; 433 /* element() */ 434 do { 435 NSInteger alt4=2; 436 NSInteger LA4_0 = [input LA:1]; 437 if ( (LA4_0==ID||LA4_0==10) ) { 438 alt4=1; 439 } 440 441 442 switch (alt4) { 443 case 1 : ; 444 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:51:22: stat // alt 445 { 446 [self pushFollow:FOLLOW_stat_in_block155]; 447 [self stat]; 448 [self popFollow]; 449 450 /* element() */ 451 /* elements */ 452 } 453 break; 454 455 default : 456 goto loop4; 457 } 458 } while (YES); 459 loop4: ; 460 /* element() */ 461 [self match:input TokenType:11 Follow:FOLLOW_11_in_block159]; /* element() */ 462 463 NSLog(@"level %d symbols: %@", level, /* scopeAttributeRef */ 464 ((Symbols_Scope *)[gStack peek]).names); 465 level--; 466 /* element() */ 467 /* elements */ 468 } 469 470 // token+rule list labels 471 472 } 473 @catch (ANTLRRecognitionException *re) { 474 [self reportError:re]; 475 [self recover:input Exception:re]; 476 } @finally { 477 [gStack pop]; 478 479 } 480 return ; 481 } 482 /* $ANTLR end block */ 483 /* 484 * $ANTLR start stat 485 * /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:58:1: stat : ( ID '=' INT ';' | block ); 486 */ 487 - (void) stat 488 { 489 // ruleScopeSetUp 490 491 @try { 492 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:58:5: ( ID '=' INT ';' | block ) //ruleblock 493 NSInteger alt5=2; 494 NSInteger LA5_0 = [input LA:1]; 495 496 if ( (LA5_0==ID) ) { 497 alt5=1; 498 } 499 else if ( (LA5_0==10) ) { 500 alt5=2; 501 } 502 else { 503 ANTLRNoViableAltException *nvae = [ANTLRNoViableAltException newANTLRNoViableAltException:5 state:0 stream:input]; 504 @throw nvae; 505 } 506 switch (alt5) { 507 case 1 : ; 508 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:58:9: ID '=' INT ';' // alt 509 { 510 [self match:input TokenType:ID Follow:FOLLOW_ID_in_stat183]; /* element() */ 511 [self match:input TokenType:12 Follow:FOLLOW_12_in_stat185]; /* element() */ 512 [self match:input TokenType:INT Follow:FOLLOW_INT_in_stat187]; /* element() */ 513 [self match:input TokenType:13 Follow:FOLLOW_13_in_stat189]; /* element() */ 514 /* elements */ 515 } 516 break; 517 case 2 : ; 518 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:59:9: block // alt 519 { 520 [self pushFollow:FOLLOW_block_in_stat199]; 521 [self block]; 522 [self popFollow]; 523 524 /* element() */ 525 /* elements */ 526 } 527 break; 528 529 } 530 // token+rule list labels 531 532 } 533 @catch (ANTLRRecognitionException *re) { 534 [self reportError:re]; 535 [self recover:input Exception:re]; 536 } @finally { 537 } 538 return ; 539 } 540 /* $ANTLR end stat */ 541 /* 542 * $ANTLR start decl 543 * /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:62:1: decl : 'int' ID ';' ; 544 */ 545 - (void) decl 546 { 547 // ruleScopeSetUp 548 549 @try { 550 id<ANTLRToken> ID1 = nil; 551 552 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:62:5: ( 'int' ID ';' ) // ruleBlockSingleAlt 553 // /usr/local/ANTLR3-ObjC2.0-Runtime/Framework/examples/scopes/SymbolTable.g:62:9: 'int' ID ';' // alt 554 { 555 [self match:input TokenType:14 Follow:FOLLOW_14_in_decl213]; /* element() */ 556 ID1=(id<ANTLRToken>)[self match:input TokenType:ID Follow:FOLLOW_ID_in_decl215]; /* element() */ 557 [self match:input TokenType:13 Follow:FOLLOW_13_in_decl217]; /* element() */ 558 [/* scopeAttributeRef */ 559 ((Symbols_Scope *)[gStack peek]).names addObject:ID1]; /* element() */ 560 /* elements */ 561 } 562 563 // token+rule list labels 564 565 } 566 @catch (ANTLRRecognitionException *re) { 567 [self reportError:re]; 568 [self recover:input Exception:re]; 569 } @finally { 570 } 571 return ; 572 } 573 /* $ANTLR end decl */ 574 575 @end // end of SymbolTableParser implementation line 669 576 577 /* End of code 578 * ============================================================================= 579 */ 580