1324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//
2324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//  AntlrReaderStream.h
3324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//  ANTLR
4324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//
5324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//  Created by Alan Condit on 2/21/11.
6324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//  Copyright 2011 Alan's MachineWorks. All rights reserved.
7324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//
8324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
9324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver#import <Cocoa/Cocoa.h>
10324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver#import "ANTLRStringStream.h"
11324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
12324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@interface ANTLRReaderStream : ANTLRStringStream {
13324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    NSFileHandle *fh;
14324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    NSInteger size;
15324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    NSInteger rbSize;
16324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    //NSData *data; /* ANTLRStringStream has NSString *data */
17324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver}
18324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
19324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@property (retain) NSFileHandle *fh;
20324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@property (assign) NSInteger size;
21324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@property (assign) NSInteger rbSize;
22324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver//@property (retain) NSData *data;
23324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
24324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver+ (NSInteger) READ_BUFFER_SIZE;
25324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver+ (NSInteger) INITIAL_BUFFER_SIZE;
26324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
27324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver+ (id) newANTLRReaderStream;
28324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver+ (id) newANTLRReaderStream:(NSFileHandle *)r;
29324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver+ (id) newANTLRReaderStream:(NSFileHandle *)r size:(NSInteger)aSize;
30324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver+ (id) newANTLRReaderStream:(NSFileHandle *)r size:(NSInteger)aSize readBufferSize:(NSInteger)aReadChunkSize;
31324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (id) initWithReader:(NSFileHandle *)r size:(NSInteger)aSize readBufferSize:(NSInteger)aReadChunkSize;
32324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void) load:(NSInteger)aSize readBufferSize:(NSInteger)aReadChunkSize;
33324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver- (void) close;
34324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
35324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver@end
36