Home | History | Annotate | Download | only in treerewrite
      1 #import <Cocoa/Cocoa.h>
      2 #import "antlr3.h"
      3 #import "TreeRewriteLexer.h"
      4 #import "TreeRewriteParser.h"
      5 //#import "stdio.h"
      6 //#include <unistd.h>
      7 
      8 int main() {
      9 	NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
     10 
     11 	ANTLRStringStream *stream = [ANTLRStringStream newANTLRStringStream:@"23 42"];
     12 	TreeRewriteLexer *lexer = [TreeRewriteLexer newTreeRewriteLexerWithCharStream:stream];
     13 	
     14 //    id<ANTLRToken> currentToken;
     15 //    while ((currentToken = [lexer nextToken]) && [currentToken type] != ANTLRTokenTypeEOF) {
     16 //        NSLog(@"%@", currentToken);
     17 //    }
     18 	
     19 	ANTLRCommonTokenStream *tokenStream = [ANTLRCommonTokenStream newANTLRCommonTokenStreamWithTokenSource:lexer];
     20 	TreeRewriteParser *parser = [[TreeRewriteParser alloc] initWithTokenStream:tokenStream];
     21 	ANTLRCommonTree *rule_tree = [[parser rule] getTree];
     22 	NSLog(@"tree: %@", [rule_tree treeDescription]);
     23 //	ANTLRCommonTreeNodeStream *treeStream = [[ANTLRCommonTreeNodeStream alloc] initWithTree:program_tree];
     24 //	SimpleCTP *walker = [[SimpleCTP alloc] initWithTreeNodeStream:treeStream];
     25 //	[walker program];
     26 
     27 	[lexer release];
     28 	[stream release];
     29 	[tokenStream release];
     30 	[parser release];
     31 //	[treeStream release];
     32 //	[walker release];
     33 
     34 	[pool release];
     35     // sleep for objectalloc
     36     // while(1) sleep(60);
     37 	return 0;
     38 }