blob: ec99b5a31adcb9372bb549f618f0cab973c7b237 [file] [log] [blame]
// -*- 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-2007 Steve Nygard
#import <Foundation/NSObject.h>
#import <Foundation/NSString.h> // for unichar
#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
typedef enum {
CDTypeLexerStateNormal = 0,
CDTypeLexerStateIdentifier = 1,
CDTypeLexerStateTemplateTypes = 2,
} CDTypeLexerState;
@class NSCharacterSet, NSScanner;
@interface CDTypeLexer : NSObject
{
NSScanner *scanner;
CDTypeLexerState state;
NSString *lexText;
BOOL shouldShowLexing;
}
- (id)initWithString:(NSString *)aString;
- (void)dealloc;
- (NSScanner *)scanner;
- (CDTypeLexerState)state;
- (void)setState:(CDTypeLexerState)newState;
- (BOOL)shouldShowLexing;
- (void)setShouldShowLexing:(BOOL)newFlag;
- (NSString *)string;
- (int)scanNextToken;
- (NSString *)lexText;
- (void)_setLexText:(NSString *)newString;
- (unichar)peekChar;
- (NSString *)remainingString;
- (NSString *)peekIdentifier;
@end