70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
- (BOOL)_isAtEndOfStream
{
@throw [OFNotImplementedException newWithClass: isa
selector: _cmd];
}
- (size_t)_readNBytes: (size_t)length
intoBuffer: (char*)buffer
{
@throw [OFNotImplementedException newWithClass: isa
selector: _cmd];
}
- (size_t)_writeNBytes: (size_t)length
fromBuffer: (const char*)buffer
{
@throw [OFNotImplementedException newWithClass: isa
selector: _cmd];
}
- (BOOL)isAtEndOfStream
{
if (cache != NULL)
return NO;
return [self _isAtEndOfStream];
}
- (size_t)readNBytes: (size_t)length
intoBuffer: (char*)buffer
{
if (cache == NULL)
return [self _readNBytes: length
intoBuffer: buffer];
if (length >= cacheLength) {
size_t ret = cacheLength;
|
|
|
|
|
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
- (BOOL)_isAtEndOfStream
{
@throw [OFNotImplementedException newWithClass: isa
selector: _cmd];
}
- (size_t)_readNBytes: (size_t)length
intoBuffer: (void*)buffer
{
@throw [OFNotImplementedException newWithClass: isa
selector: _cmd];
}
- (size_t)_writeNBytes: (size_t)length
fromBuffer: (const void*)buffer
{
@throw [OFNotImplementedException newWithClass: isa
selector: _cmd];
}
- (BOOL)isAtEndOfStream
{
if (cache != NULL)
return NO;
return [self _isAtEndOfStream];
}
- (size_t)readNBytes: (size_t)length
intoBuffer: (void*)buffer
{
if (cache == NULL)
return [self _readNBytes: length
intoBuffer: buffer];
if (length >= cacheLength) {
size_t ret = cacheLength;
|
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
|
cacheLength -= length;
return length;
}
}
- (void)readExactlyNBytes: (size_t)length
intoBuffer: (char*)buffer
{
size_t readLength = 0;
while (readLength < length)
readLength += [self readNBytes: length - readLength
intoBuffer: buffer + readLength];
}
- (uint8_t)readInt8
{
uint8_t ret;
[self readExactlyNBytes: 1
|
|
|
|
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
|
cacheLength -= length;
return length;
}
}
- (void)readExactlyNBytes: (size_t)length
intoBuffer: (void*)buffer
{
size_t readLength = 0;
while (readLength < length)
readLength += [self readNBytes: length - readLength
intoBuffer: (char*)buffer + readLength];
}
- (uint8_t)readInt8
{
uint8_t ret;
[self readExactlyNBytes: 1
|
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
|
[self freeMemory: writeBuffer];
writeBuffer = NULL;
writeBufferLength = 0;
}
- (size_t)writeNBytes: (size_t)length
fromBuffer: (const char*)buffer
{
if (!buffersWrites)
return [self _writeNBytes: length
fromBuffer: buffer];
else {
writeBuffer = [self resizeMemory: writeBuffer
toSize: writeBufferLength + length];
|
|
|
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
|
[self freeMemory: writeBuffer];
writeBuffer = NULL;
writeBufferLength = 0;
}
- (size_t)writeNBytes: (size_t)length
fromBuffer: (const void*)buffer
{
if (!buffersWrites)
return [self _writeNBytes: length
fromBuffer: buffer];
else {
writeBuffer = [self resizeMemory: writeBuffer
toSize: writeBufferLength + length];
|