5 // Created by Jonathan Wight on 04/16/08.
6 // Copyright 2008 toxicsoftware.com. All rights reserved.
9 #import <Foundation/Foundation.h>
13 @interface CDataScanner : NSObject {
21 NSCharacterSet *doubleCharacters;
24 @property (readwrite, retain) NSData *data;
25 @property (readwrite, assign) NSInteger scanLocation;
26 @property (readonly, assign) BOOL isAtEnd;
28 + (id)scannerWithData:(NSData *)inData;
30 - (unichar)currentCharacter;
31 - (unichar)scanCharacter;
32 - (BOOL)scanCharacter:(unichar)inCharacter;
34 - (BOOL)scanUTF8String:(const char *)inString intoString:(NSString **)outValue;
35 - (BOOL)scanString:(NSString *)inString intoString:(NSString **)outValue;
36 - (BOOL)scanCharactersFromSet:(NSCharacterSet *)inSet intoString:(NSString **)outValue; // inSet must only contain 7-bit ASCII characters
38 - (BOOL)scanUpToString:(NSString *)string intoString:(NSString **)outValue;
39 - (BOOL)scanUpToCharactersFromSet:(NSCharacterSet *)set intoString:(NSString **)outValue; // inSet must only contain 7-bit ASCII characters
41 - (BOOL)scanNumber:(NSNumber **)outValue;