xref: /aosp_15_r20/external/antlr/runtime/ObjC/Framework/ANTLRInputStream.m (revision 16467b971bd3e2009fad32dd79016f2c7e421deb)
1*16467b97STreehugger Robot//
2*16467b97STreehugger Robot//  ANTLRInputStream.m
3*16467b97STreehugger Robot//  ANTLR
4*16467b97STreehugger Robot//
5*16467b97STreehugger Robot//  Created by Alan Condit on 2/21/11.
6*16467b97STreehugger Robot//  Copyright 2011 Alan's MachineWorks. All rights reserved.
7*16467b97STreehugger Robot//
8*16467b97STreehugger Robot
9*16467b97STreehugger Robot#import <Foundation/Foundation.h>
10*16467b97STreehugger Robot#import "ANTLRInputStream.h"
11*16467b97STreehugger Robot
12*16467b97STreehugger Robot
13*16467b97STreehugger Robot@implementation ANTLRInputStream
14*16467b97STreehugger Robot
15*16467b97STreehugger Robot@synthesize encoding;
16*16467b97STreehugger Robot
17*16467b97STreehugger Robot+ (id) newANTLRInputStream
18*16467b97STreehugger Robot{
19*16467b97STreehugger Robot    return [[ANTLRInputStream alloc] init];
20*16467b97STreehugger Robot}
21*16467b97STreehugger Robot
22*16467b97STreehugger Robot+ (id) newANTLRInputStream:(NSInputStream *)anInput
23*16467b97STreehugger Robot{
24*16467b97STreehugger Robot    return [[ANTLRInputStream alloc] initWithInput:anInput size:ANTLRReaderStream.INITIAL_BUFFER_SIZE readBufferSize:ANTLRReaderStream.READ_BUFFER_SIZE encoding:NSASCIIStringEncoding];
25*16467b97STreehugger Robot}
26*16467b97STreehugger Robot
27*16467b97STreehugger Robot+ (id) newANTLRInputStream:(NSInputStream *)anInput size:(NSInteger)theSize
28*16467b97STreehugger Robot{
29*16467b97STreehugger Robot    return [[ANTLRInputStream alloc] initWithInput:anInput size:theSize readBufferSize:ANTLRReaderStream.READ_BUFFER_SIZE encoding:NSASCIIStringEncoding];
30*16467b97STreehugger Robot}
31*16467b97STreehugger Robot
32*16467b97STreehugger Robot+ (id) newANTLRInputStream:(NSInputStream *)anInput encoding:(NSStringEncoding)theEncoding
33*16467b97STreehugger Robot{
34*16467b97STreehugger Robot    return [[ANTLRInputStream alloc] initWithInput:anInput size:ANTLRReaderStream.INITIAL_BUFFER_SIZE readBufferSize:ANTLRReaderStream.READ_BUFFER_SIZE encoding:theEncoding];
35*16467b97STreehugger Robot}
36*16467b97STreehugger Robot
37*16467b97STreehugger Robot+ (id) newANTLRInputStream:(NSInputStream *)anInput
38*16467b97STreehugger Robot                      size:(NSInteger)theSize
39*16467b97STreehugger Robot            readBufferSize:(NSInteger)theRBSize
40*16467b97STreehugger Robot                  encoding:(NSStringEncoding)theEncoding
41*16467b97STreehugger Robot{
42*16467b97STreehugger Robot    return [[ANTLRInputStream alloc] initWithInput:anInput size:theSize readBufferSize:theRBSize encoding:theEncoding];
43*16467b97STreehugger Robot}
44*16467b97STreehugger Robot
45*16467b97STreehugger Robot- (id) init
46*16467b97STreehugger Robot{
47*16467b97STreehugger Robot    self = [super init];
48*16467b97STreehugger Robot    return self;
49*16467b97STreehugger Robot}
50*16467b97STreehugger Robot
51*16467b97STreehugger Robot- (id) initWithInput:(NSInputStream *)anInput
52*16467b97STreehugger Robot                size:(NSInteger)theSize
53*16467b97STreehugger Robot      readBufferSize:(NSInteger)theRBSize
54*16467b97STreehugger Robot            encoding:(NSStringEncoding)theEncoding
55*16467b97STreehugger Robot{
56*16467b97STreehugger Robot    self = [super initWithReader:anInput size:theSize readBufferSize:theRBSize];
57*16467b97STreehugger Robot    if ( self != nil ) {
58*16467b97STreehugger Robot        //[self load:theSize readBufferSize:theRBSize]; // load called in super class
59*16467b97STreehugger Robot    }
60*16467b97STreehugger Robot    return self;
61*16467b97STreehugger Robot}
62*16467b97STreehugger Robot
63*16467b97STreehugger Robot@end
64