diff options
author | Matthias Andreas Benkard <matthias@benkard.de> | 2008-08-28 16:26:07 +0200 |
---|---|---|
committer | Matthias Andreas Benkard <matthias@benkard.de> | 2008-08-28 16:26:07 +0200 |
commit | 3a5710bf7cb85da4ba6a327d6149db46e6bed82e (patch) | |
tree | fd63fdf8063ed5230e43785c64bd1990c42875a3 /MLKStringOutputStream.m | |
parent | 5afdd34ed00ed1de76b90a884e5b04bd699dc0af (diff) |
Eliminate MLKStream, introduce MLKBinaryStream and MLKCharacterStream.
Diffstat (limited to 'MLKStringOutputStream.m')
-rw-r--r-- | MLKStringOutputStream.m | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/MLKStringOutputStream.m b/MLKStringOutputStream.m index 00a60b0..ea08b89 100644 --- a/MLKStringOutputStream.m +++ b/MLKStringOutputStream.m @@ -17,6 +17,7 @@ */ #import "MLKStringOutputStream.h" +#import "MLKStreamStream.h" #import "runtime-compatibility.h" #import "util.h" @@ -28,16 +29,26 @@ @implementation MLKStringOutputStream -(id) init { - self = (id)[super initWithInputStream:nil - outputStream:LAUTORELEASE ([[NSOutputStream alloc] initToMemory]) - encoding:NSUnicodeStringEncoding]; + _outputStream = [[NSOutputStream alloc] initToMemory]; + + MLKStreamStream *binstream = + LAUTORELEASE ([[MLKStreamStream alloc] initWithOutputStream:_outputStream]); + + self = (id) [super initWithBinaryStream:binstream + encoding:NSUnicodeStringEncoding]; return self; } +-(void) dealloc +{ + LDESTROY (_outputStream); + [super dealloc]; +} + -(NSString *) string { - NSData *data = [_output propertyForKey:NSStreamDataWrittenToMemoryStreamKey]; + NSData *data = [_outputStream propertyForKey:NSStreamDataWrittenToMemoryStreamKey]; return LAUTORELEASE ([[NSString alloc] initWithData:data - encoding:NSUnicodeStringEncoding]); + encoding:NSUnicodeStringEncoding]); } @end |