forked from nygard/class-dump
/
CDTypeLexer.h
46 lines (34 loc) · 1.08 KB
/
CDTypeLexer.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
// -*- mode: ObjC -*-
// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files.
// Copyright (C) 1997-1998, 2000-2001, 2004-2011 Steve Nygard.
#import <Foundation/Foundation.h>
#define TK_EOS 0
#define TK_NUMBER 257
#define TK_IDENTIFIER 258
#define T_NAMED_OBJECT 259
#define TK_QUOTED_STRING 260
#define TK_TEMPLATE_TYPE TK_IDENTIFIER
enum {
CDTypeLexerState_Normal = 0,
CDTypeLexerState_Identifier = 1,
CDTypeLexerState_TemplateTypes = 2,
};
typedef NSUInteger CDTypeLexerState;
@interface CDTypeLexer : NSObject
{
NSScanner *scanner;
CDTypeLexerState state;
NSString *lexText;
BOOL shouldShowLexing;
}
- (id)initWithString:(NSString *)aString;
@property (readonly) NSScanner *scanner;
@property (nonatomic, assign) CDTypeLexerState state;
@property (assign) BOOL shouldShowLexing;
@property (readonly) NSString *string;
- (int)scanNextToken;
@property (retain) NSString *lexText;
@property (readonly) unichar peekChar;
@property (readonly) NSString *remainingString;
@property (readonly) NSString *peekIdentifier;
@end