83 lines
2.3 KiB
Objective-C
83 lines
2.3 KiB
Objective-C
// $ANTLR 3.4 /Users/acondit/source/antlr/code/antlr3/runtime/ObjC/Framework/examples/hoistedPredicates/T.g 2012-02-16 17:34:26
|
|
|
|
/* =============================================================================
|
|
* Standard antlr OBJC runtime definitions
|
|
*/
|
|
#import <Foundation/Foundation.h>
|
|
#import <ANTLR/ANTLR.h>
|
|
/* End of standard antlr3 runtime definitions
|
|
* =============================================================================
|
|
*/
|
|
|
|
/* parserHeaderFile */
|
|
#ifndef ANTLR3TokenTypeAlreadyDefined
|
|
#define ANTLR3TokenTypeAlreadyDefined
|
|
typedef enum {
|
|
ANTLR_EOF = -1,
|
|
INVALID,
|
|
EOR,
|
|
DOWN,
|
|
UP,
|
|
MIN
|
|
} ANTLR3TokenType;
|
|
#endif
|
|
|
|
#pragma mark Tokens
|
|
#ifdef EOF
|
|
#undef EOF
|
|
#endif
|
|
#define EOF -1
|
|
#define T__7 7
|
|
#define ID 4
|
|
#define INT 5
|
|
#define WS 6
|
|
#pragma mark Dynamic Global Scopes globalAttributeScopeInterface
|
|
#pragma mark Dynamic Rule Scopes ruleAttributeScopeInterface
|
|
#pragma mark Rule Return Scopes returnScopeInterface
|
|
|
|
/* Interface grammar class */
|
|
@interface TParser : Parser { /* line 572 */
|
|
#pragma mark Dynamic Rule Scopes ruleAttributeScopeDecl
|
|
#pragma mark Dynamic Global Rule Scopes globalAttributeScopeMemVar
|
|
|
|
|
|
/* ObjC start of actions.(actionScope).memVars */
|
|
|
|
/* With this true, enum is seen as a keyword. False, it's an identifier */
|
|
BOOL enableEnum;
|
|
|
|
/* ObjC end of actions.(actionScope).memVars */
|
|
/* ObjC start of memVars */
|
|
/* ObjC end of memVars */
|
|
|
|
}
|
|
|
|
/* ObjC start of actions.(actionScope).properties */
|
|
/* ObjC end of actions.(actionScope).properties */
|
|
/* ObjC start of properties */
|
|
/* ObjC end of properties */
|
|
|
|
+ (void) initialize;
|
|
+ (id) newTParser:(id<TokenStream>)aStream;
|
|
/* ObjC start of actions.(actionScope).methodsDecl */
|
|
/* ObjC end of actions.(actionScope).methodsDecl */
|
|
|
|
/* ObjC start of methodsDecl */
|
|
/* ObjC end of methodsDecl */
|
|
|
|
- (void)stat;
|
|
- (void)identifier;
|
|
- (void)enumAsKeyword;
|
|
- (void)enumAsID;
|
|
|
|
|
|
@end /* end of TParser interface */
|
|
|
|
/** Demonstrates how semantic predicates get hoisted out of the rule in
|
|
* which they are found and used in other decisions. This grammar illustrates
|
|
* how predicates can be used to distinguish between enum as a keyword and
|
|
* an ID *dynamically*. :)
|
|
|
|
* Run "java org.antlr.Tool -dfa t.g" to generate DOT (graphviz) files. See
|
|
* the T_dec-1.dot file to see the predicates in action.
|
|
*/ |