📄 symboltableparser.m
字号:
// $ANTLR 3.0b5 /Users/kroepke/Projects/antlr3/code/antlr/main/lib/ObjC/Framework/examples/scopes/SymbolTable.g 2006-11-12 20:47:00#import "SymbolTableParser.h"#pragma mark Cyclic DFA#pragma mark Bitsetsconst static unsigned long long FOLLOW_globals_in_prog44_data[] = {0x0000000000000082LL};static ANTLRBitSet *FOLLOW_globals_in_prog44;const static unsigned long long FOLLOW_method_in_prog47_data[] = {0x0000000000000082LL};static ANTLRBitSet *FOLLOW_method_in_prog47;const static unsigned long long FOLLOW_decl_in_globals79_data[] = {0x0000000000004002LL};static ANTLRBitSet *FOLLOW_decl_in_globals79;const static unsigned long long FOLLOW_7_in_method110_data[] = {0x0000000000000010LL};static ANTLRBitSet *FOLLOW_7_in_method110;const static unsigned long long FOLLOW_SymbolTableParser_ID_in_method112_data[] = {0x0000000000000100LL};static ANTLRBitSet *FOLLOW_SymbolTableParser_ID_in_method112;const static unsigned long long FOLLOW_8_in_method114_data[] = {0x0000000000000200LL};static ANTLRBitSet *FOLLOW_8_in_method114;const static unsigned long long FOLLOW_9_in_method116_data[] = {0x0000000000000400LL};static ANTLRBitSet *FOLLOW_9_in_method116;const static unsigned long long FOLLOW_block_in_method118_data[] = {0x0000000000000002LL};static ANTLRBitSet *FOLLOW_block_in_method118;const static unsigned long long FOLLOW_10_in_block147_data[] = {0x0000000000004C10LL};static ANTLRBitSet *FOLLOW_10_in_block147;const static unsigned long long FOLLOW_decl_in_block150_data[] = {0x0000000000004C10LL};static ANTLRBitSet *FOLLOW_decl_in_block150;const static unsigned long long FOLLOW_stat_in_block155_data[] = {0x0000000000000C10LL};static ANTLRBitSet *FOLLOW_stat_in_block155;const static unsigned long long FOLLOW_11_in_block159_data[] = {0x0000000000000002LL};static ANTLRBitSet *FOLLOW_11_in_block159;const static unsigned long long FOLLOW_SymbolTableParser_ID_in_stat183_data[] = {0x0000000000001000LL};static ANTLRBitSet *FOLLOW_SymbolTableParser_ID_in_stat183;const static unsigned long long FOLLOW_12_in_stat185_data[] = {0x0000000000000020LL};static ANTLRBitSet *FOLLOW_12_in_stat185;const static unsigned long long FOLLOW_SymbolTableParser_INT_in_stat187_data[] = {0x0000000000002000LL};static ANTLRBitSet *FOLLOW_SymbolTableParser_INT_in_stat187;const static unsigned long long FOLLOW_13_in_stat189_data[] = {0x0000000000000002LL};static ANTLRBitSet *FOLLOW_13_in_stat189;const static unsigned long long FOLLOW_block_in_stat199_data[] = {0x0000000000000002LL};static ANTLRBitSet *FOLLOW_block_in_stat199;const static unsigned long long FOLLOW_14_in_decl213_data[] = {0x0000000000000010LL};static ANTLRBitSet *FOLLOW_14_in_decl213;const static unsigned long long FOLLOW_SymbolTableParser_ID_in_decl215_data[] = {0x0000000000002000LL};static ANTLRBitSet *FOLLOW_SymbolTableParser_ID_in_decl215;const static unsigned long long FOLLOW_13_in_decl217_data[] = {0x0000000000000002LL};static ANTLRBitSet *FOLLOW_13_in_decl217;#pragma mark Dynamic Global Scopes@implementation SymbolTableParserSymbolsScope@end#pragma mark Dynamic Rule Scopes#pragma mark Rule return scopes start@implementation SymbolTableParser+ (void) initialize{ FOLLOW_globals_in_prog44 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_globals_in_prog44_data count:1]; FOLLOW_method_in_prog47 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_method_in_prog47_data count:1]; FOLLOW_decl_in_globals79 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_decl_in_globals79_data count:1]; FOLLOW_7_in_method110 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_7_in_method110_data count:1]; FOLLOW_SymbolTableParser_ID_in_method112 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_SymbolTableParser_ID_in_method112_data count:1]; FOLLOW_8_in_method114 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_8_in_method114_data count:1]; FOLLOW_9_in_method116 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_9_in_method116_data count:1]; FOLLOW_block_in_method118 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_block_in_method118_data count:1]; FOLLOW_10_in_block147 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_10_in_block147_data count:1]; FOLLOW_decl_in_block150 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_decl_in_block150_data count:1]; FOLLOW_stat_in_block155 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_stat_in_block155_data count:1]; FOLLOW_11_in_block159 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_11_in_block159_data count:1]; FOLLOW_SymbolTableParser_ID_in_stat183 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_SymbolTableParser_ID_in_stat183_data count:1]; FOLLOW_12_in_stat185 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_12_in_stat185_data count:1]; FOLLOW_SymbolTableParser_INT_in_stat187 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_SymbolTableParser_INT_in_stat187_data count:1]; FOLLOW_13_in_stat189 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_13_in_stat189_data count:1]; FOLLOW_block_in_stat199 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_block_in_stat199_data count:1]; FOLLOW_14_in_decl213 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_14_in_decl213_data count:1]; FOLLOW_SymbolTableParser_ID_in_decl215 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_SymbolTableParser_ID_in_decl215_data count:1]; FOLLOW_13_in_decl217 = [[ANTLRBitSet alloc] initWithBits:FOLLOW_13_in_decl217_data count:1];}- (id) initWithTokenStream:(id<ANTLRTokenStream>)aStream{ if ((self = [super initWithTokenStream:aStream])) { tokenNames = [[NSArray alloc] initWithObjects:@"<invalid>", @"<EOR>", @"<DOWN>", @"<UP>", @"ID", @"INT", @"WS", @"'method'", @"'('", @"')'", @"'{'", @"'}'", @"'='", @"';'", @"'int'", nil]; SymbolTableParser_Symbols_stack = [[NSMutableArray alloc] init]; level = 0; } return self;}- (void) dealloc{ [tokenNames release]; [SymbolTableParser_Symbols_stack release]; [super dealloc];}// $ANTLR start prog// /Users/kroepke/Projects/antlr3/code/antlr/main/lib/ObjC/Framework/examples/scopes/SymbolTable.g:25:1: prog : globals ( method )* ;- (void) prog{ @try { // /Users/kroepke/Projects/antlr3/code/antlr/main/lib/ObjC/Framework/examples/scopes/SymbolTable.g:25:9: ( globals ( method )* ) // ruleBlockSingleAlt // /Users/kroepke/Projects/antlr3/code/antlr/main/lib/ObjC/Framework/examples/scopes/SymbolTable.g:25:9: globals ( method )* // alt { [following addObject:FOLLOW_globals_in_prog44]; [self globals]; [following removeLastObject]; do { int alt1=2; { int LA1_0 = [input LA:1]; if ( LA1_0==7 ) { alt1 = 1; } } switch (alt1) { case 1 : // /Users/kroepke/Projects/antlr3/code/antlr/main/lib/ObjC/Framework/examples/scopes/SymbolTable.g:25:18: method // alt { [following addObject:FOLLOW_method_in_prog47]; [self method]; [following removeLastObject]; } break; default : goto loop1; } } while (YES); loop1: ; } } @catch (ANTLRRecognitionException *re) { [self reportError:re]; [self recover:input exception:re]; } @finally { // token labels // token+rule list labels // rule labels // rule refs in alts with rewrites } return ;}// $ANTLR end prog// $ANTLR start globals// /Users/kroepke/Projects/antlr3/code/antlr/main/lib/ObjC/Framework/examples/scopes/SymbolTable.g:28:1: globals : ( decl )* ;- (void) globals{ [SymbolTableParser_Symbols_stack addObject:[[[SymbolTableParserSymbolsScope alloc] init] autorelease]]; level++; [[SymbolTableParser_Symbols_stack lastObject] setValue: [[NSMutableArray alloc] init] forKey:@"names"]; @try { // /Users/kroepke/Projects/antlr3/code/antlr/main/lib/ObjC/Framework/examples/scopes/SymbolTable.g:34:9: ( ( decl )* ) // ruleBlockSingleAlt // /Users/kroepke/Projects/antlr3/code/antlr/main/lib/ObjC/Framework/examples/scopes/SymbolTable.g:34:9: ( decl )* // alt { do { int alt2=2; { int LA2_0 = [input LA:1]; if ( LA2_0==14 ) { alt2 = 1; } } switch (alt2) { case 1 : // /Users/kroepke/Projects/antlr3/code/antlr/main/lib/ObjC/Framework/examples/scopes/SymbolTable.g:34:10: decl // alt { [following addObject:FOLLOW_decl_in_globals79]; [self decl]; [following removeLastObject]; } break; default : goto loop2; } } while (YES); loop2: ; NSLog(@"globals: %@", [[SymbolTableParser_Symbols_stack lastObject] valueForKey:@"names"]); level--; } } @catch (ANTLRRecognitionException *re) { [self reportError:re]; [self recover:input exception:re]; } @finally { // token labels // token+rule list labels // rule labels // rule refs in alts with rewrites [SymbolTableParser_Symbols_stack removeLastObject]; } return ;}// $ANTLR end globals
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -