Overview
Comment: | Add +[OFDataArray dataArray] with a default item size of 1. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
12617ef944b7a49ced63a8c16400dee8 |
User & Date: | js on 2011-04-25 11:35:59 |
Other Links: | manifest | tags |
Context
2011-04-25
| ||
11:39 | Add -[OFDataArray readDataArrayWithNItems:]. check-in: 8c45d72a13 user: js tags: trunk | |
11:35 | Add +[OFDataArray dataArray] with a default item size of 1. check-in: 12617ef944 user: js tags: trunk | |
11:20 | Make some GCC versions happy. check-in: 8faae2f499 user: js tags: trunk | |
Changes
Modified src/OFDataArray.h from [0e4d25200c] to [c05a7401db].
︙ | ︙ | |||
33 34 35 36 37 38 39 40 41 42 43 44 45 46 | } #ifdef OF_HAVE_PROPERTIES @property (readonly) size_t count; @property (readonly) size_t itemSize; #endif /** * Creates a new OFDataArray whose items all have the same size. * * \param itemSize The size of each element in the OFDataArray * \return A new autoreleased OFDataArray */ + dataArrayWithItemSize: (size_t)itemSize; | > > > > > > > | 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | } #ifdef OF_HAVE_PROPERTIES @property (readonly) size_t count; @property (readonly) size_t itemSize; #endif /** * Creates a new OFDataArray with an item size of 1. * * \return A new autoreleased OFDataArray */ + dataArray; /** * Creates a new OFDataArray whose items all have the same size. * * \param itemSize The size of each element in the OFDataArray * \return A new autoreleased OFDataArray */ + dataArrayWithItemSize: (size_t)itemSize; |
︙ | ︙ | |||
68 69 70 71 72 73 74 75 76 77 78 79 80 81 | * Base64-encoded string. * * \param string The string with the Base64-encoded data * \return A new autoreleased OFDataArray */ + dataArrayWithBase64EncodedString: (OFString*)string; /** * Initializes an already allocated OFDataArray whose items all have the same * size. * * \param itemSize The size of each element in the OFDataArray * \return An initialized OFDataArray */ | > > > > > > > | 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | * Base64-encoded string. * * \param string The string with the Base64-encoded data * \return A new autoreleased OFDataArray */ + dataArrayWithBase64EncodedString: (OFString*)string; /** * Initializes an already allocated OFDataArray with an item size of 1. * * \return A initialized OFDataArray */ - init; /** * Initializes an already allocated OFDataArray whose items all have the same * size. * * \param itemSize The size of each element in the OFDataArray * \return An initialized OFDataArray */ |
︙ | ︙ |
Modified src/OFDataArray.m from [b6f607f8d4] to [e4b0bd482e].
︙ | ︙ | |||
40 41 42 43 44 45 46 47 48 49 50 51 52 53 | /* References for static linking */ void _references_to_categories_of_OFDataArray(void) { _OFDataArray_Hashing_reference = 1; }; @implementation OFDataArray + dataArrayWithItemSize: (size_t)itemSize { return [[[self alloc] initWithItemSize: itemSize] autorelease]; } + dataArrayWithContentsOfFile: (OFString*)path { | > > > > > | 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | /* References for static linking */ void _references_to_categories_of_OFDataArray(void) { _OFDataArray_Hashing_reference = 1; }; @implementation OFDataArray + dataArray { return [[[self alloc] init] autorelease]; } + dataArrayWithItemSize: (size_t)itemSize { return [[[self alloc] initWithItemSize: itemSize] autorelease]; } + dataArrayWithContentsOfFile: (OFString*)path { |
︙ | ︙ | |||
62 63 64 65 66 67 68 | + dataArrayWithBase64EncodedString: (OFString*)string { return [[[self alloc] initWithBase64EncodedString: string] autorelease]; } - init { | | | > | | < | > > | | | < < < < < | > | 67 68 69 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 | + dataArrayWithBase64EncodedString: (OFString*)string { return [[[self alloc] initWithBase64EncodedString: string] autorelease]; } - init { self = [super init]; itemSize = 1; return self; } - initWithItemSize: (size_t)itemSize_ { self = [super init]; if (itemSize_ == 0) { Class c = isa; [self release]; @throw [OFInvalidArgumentException newWithClass: c selector: _cmd]; } itemSize = itemSize_; return self; } - initWithContentsOfFile: (OFString*)path { self = [super init]; |
︙ | ︙ |
Modified src/OFHTTPRequest.m from [908217ca1f] to [4f74296a47].
︙ | ︙ | |||
359 360 361 362 363 364 365 | } [delegate request: self didReceiveHeaders: serverHeaders withStatusCode: status]; if (storesData) | | | 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 | } [delegate request: self didReceiveHeaders: serverHeaders withStatusCode: status]; if (storesData) data = [OFDataArray dataArray]; else data = nil; buffer = [self allocMemoryWithSize: of_pagesize]; bytesReceived = 0; @try { size_t len; |
︙ | ︙ |
Modified src/OFStream.m from [49caf92ef8] to [7a29dd6a1c].
︙ | ︙ | |||
229 230 231 232 233 234 235 | } - (OFDataArray*)readDataArrayTillEndOfStream { OFDataArray *dataArray; char *buffer; | | | 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 | } - (OFDataArray*)readDataArrayTillEndOfStream { OFDataArray *dataArray; char *buffer; dataArray = [OFDataArray dataArray]; buffer = [self allocMemoryWithSize: of_pagesize]; @try { while (![self isAtEndOfStream]) { size_t length; length = [self readNBytes: of_pagesize |
︙ | ︙ |
Modified tests/OFDataArrayTests.m from [3733b53d2c] to [a012d58751].
︙ | ︙ | |||
63 64 65 66 67 68 69 | fromCArray: [array[0] cArray]]) && [array[1] isEqual: array[0]] && R([array[1] removeNItems: 1]) && ![array[0] isEqual: array[1]]) TEST(@"-[copy]", (array[1] = [[array[0] copy] autorelease]) && [array[0] isEqual: array[1]]) | | | | | 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | fromCArray: [array[0] cArray]]) && [array[1] isEqual: array[0]] && R([array[1] removeNItems: 1]) && ![array[0] isEqual: array[1]]) TEST(@"-[copy]", (array[1] = [[array[0] copy] autorelease]) && [array[0] isEqual: array[1]]) array[2] = [OFDataArray dataArray]; array[3] = [OFDataArray dataArray]; [array[2] addItem: "a"]; [array[2] addItem: "a"]; [array[3] addItem: "z"]; TEST(@"-[compare]", [array[0] compare: array[1]] == 0 && R([array[1] removeNItems: 1]) && [array[0] compare: array[1]] == OF_ORDERED_DESCENDING && [array[1] compare: array[0]] == OF_ORDERED_ASCENDING && [array[2] compare: array[3]] == OF_ORDERED_ASCENDING) TEST(@"-[hash]", [array[0] hash] == 0x634A529F) array[0] = [class dataArray]; [array[0] addNItems: 6 fromCArray: "abcdef"]; TEST(@"-[removeNItems:]", R([array[0] removeNItems: 1]) && [array[0] count] == 5 && !memcmp([array[0] cArray], "abcde", 5)) |
︙ | ︙ | |||
107 108 109 110 111 112 113 | [[array[0] stringByBase64Encoding] isEqual: @"YWJjZGU="]) TEST(@"+[dataArrayWithBase64EncodedString:]", !memcmp([[class dataArrayWithBase64EncodedString: @"YWJjZGU="] cArray], "abcde", 5)) TEST(@"Building strings", | | | 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 | [[array[0] stringByBase64Encoding] isEqual: @"YWJjZGU="]) TEST(@"+[dataArrayWithBase64EncodedString:]", !memcmp([[class dataArrayWithBase64EncodedString: @"YWJjZGU="] cArray], "abcde", 5)) TEST(@"Building strings", (array[0] = [class dataArray]) && R([array[0] addNItems: 6 fromCArray: (void*)str]) && R([array[0] addItem: ""]) && !strcmp([array[0] cArray], str)) EXPECT_EXCEPTION(@"Detect out of range in -[itemAtIndex:]", OFOutOfRangeException, [array[0] itemAtIndex: [array[0] count]]) |
︙ | ︙ |