@@ -448,22 +448,22 @@ self = [super init]; @try { _s = &_storage; - _s->cStringLength = [string UTF8StringLength]; + _s->cStringLength = string.UTF8StringLength; if ([string isKindOfClass: [OFString_UTF8 class]] || [string isKindOfClass: [OFMutableString_UTF8 class]]) _s->isUTF8 = ((OFString_UTF8 *)string)->_s->isUTF8; else _s->isUTF8 = true; - _s->length = [string length]; + _s->length = string.length; _s->cString = [self allocMemoryWithSize: _s->cStringLength + 1]; - memcpy(_s->cString, [string UTF8String], _s->cStringLength + 1); + memcpy(_s->cString, string.UTF8String, _s->cStringLength + 1); } @catch (id e) { [self release]; @throw e; } @@ -678,11 +678,11 @@ if (format == nil) @throw [OFInvalidArgumentException exception]; _s = &_storage; - if ((cStringLength = of_vasprintf(&tmp, [format UTF8String], + if ((cStringLength = of_vasprintf(&tmp, format.UTF8String, arguments)) == -1) @throw [OFInvalidFormatException exception]; _s->cStringLength = cStringLength; @@ -791,21 +791,21 @@ if (![object isKindOfClass: [OFString class]]) return false; otherString = object; - if ([otherString UTF8StringLength] != _s->cStringLength || - [otherString length] != _s->length) + if (otherString.UTF8StringLength != _s->cStringLength || + otherString.length != _s->length) return false; if (([otherString isKindOfClass: [OFString_UTF8 class]] || [otherString isKindOfClass: [OFMutableString_UTF8 class]]) && _s->hashed && otherString->_s->hashed && _s->hash != otherString->_s->hash) return false; - if (strcmp(_s->cString, [otherString UTF8String]) != 0) + if (strcmp(_s->cString, otherString.UTF8String) != 0) return false; return true; } @@ -820,15 +820,15 @@ if (![(id)object isKindOfClass: [OFString class]]) @throw [OFInvalidArgumentException exception]; otherString = (OFString *)object; - otherCStringLength = [otherString UTF8StringLength]; + otherCStringLength = otherString.UTF8StringLength; minimumCStringLength = (_s->cStringLength > otherCStringLength ? otherCStringLength : _s->cStringLength); - if ((compare = memcmp(_s->cString, [otherString UTF8String], + if ((compare = memcmp(_s->cString, otherString.UTF8String, minimumCStringLength)) == 0) { if (_s->cStringLength > otherCStringLength) return OF_ORDERED_DESCENDING; if (_s->cStringLength < otherCStringLength) return OF_ORDERED_ASCENDING; @@ -854,12 +854,12 @@ return OF_ORDERED_SAME; if (![otherString isKindOfClass: [OFString class]]) @throw [OFInvalidArgumentException exception]; - otherCString = [otherString UTF8String]; - otherCStringLength = [otherString UTF8StringLength]; + otherCString = otherString.UTF8String; + otherCStringLength = otherString.UTF8StringLength; #ifdef OF_HAVE_UNICODE_TABLES if (!_s->isUTF8) { #endif minimumCStringLength = (_s->cStringLength > otherCStringLength @@ -945,12 +945,12 @@ if ((length = of_string_utf8_decode(_s->cString + i, _s->cStringLength - i, &c)) <= 0) @throw [OFInvalidEncodingException exception]; OF_HASH_ADD(hash, (c & 0xFF0000) >> 16); - OF_HASH_ADD(hash, (c & 0x00FF00) >> 8); - OF_HASH_ADD(hash, c & 0x0000FF); + OF_HASH_ADD(hash, (c & 0x00FF00) >> 8); + OF_HASH_ADD(hash, c & 0x0000FF); i += length - 1; } OF_HASH_FINALIZE(hash); @@ -983,11 +983,11 @@ - (void)getCharacters: (of_unichar_t *)buffer inRange: (of_range_t)range { /* TODO: Could be slightly optimized */ void *pool = objc_autoreleasePoolPush(); - const of_unichar_t *characters = [self characters]; + const of_unichar_t *characters = self.characters; if (range.length > SIZE_MAX - range.location || range.location + range.length > _s->length) @throw [OFOutOfRangeException exception]; @@ -999,12 +999,12 @@ - (of_range_t)rangeOfString: (OFString *)string options: (int)options range: (of_range_t)range { - const char *cString = [string UTF8String]; - size_t cStringLength = [string UTF8StringLength]; + const char *cString = string.UTF8String; + size_t cStringLength = string.UTF8StringLength; size_t rangeLocation, rangeLength; if (range.length > SIZE_MAX - range.location || range.location + range.length > _s->length) @throw [OFOutOfRangeException exception]; @@ -1030,11 +1030,11 @@ for (size_t i = rangeLength - cStringLength;; i--) { if (memcmp(_s->cString + rangeLocation + i, cString, cStringLength) == 0) { range.location += of_string_utf8_get_index( _s->cString + rangeLocation, i); - range.length = [string length]; + range.length = string.length; return range; } /* Did not match and we're at the last char */ @@ -1045,11 +1045,11 @@ for (size_t i = 0; i <= rangeLength - cStringLength; i++) { if (memcmp(_s->cString + rangeLocation + i, cString, cStringLength) == 0) { range.location += of_string_utf8_get_index( _s->cString + rangeLocation, i); - range.length = [string length]; + range.length = string.length; return range; } } } @@ -1057,12 +1057,12 @@ return of_range(OF_NOT_FOUND, 0); } - (bool)containsString: (OFString *)string { - const char *cString = [string UTF8String]; - size_t cStringLength = [string UTF8StringLength]; + const char *cString = string.UTF8String; + size_t cStringLength = string.UTF8StringLength; if (cStringLength == 0) return true; if (cStringLength > _s->cStringLength) @@ -1094,36 +1094,36 @@ length: end - start]; } - (bool)hasPrefix: (OFString *)prefix { - size_t cStringLength = [prefix UTF8StringLength]; + size_t cStringLength = prefix.UTF8StringLength; if (cStringLength > _s->cStringLength) return false; - return (memcmp(_s->cString, [prefix UTF8String], cStringLength) == 0); + return (memcmp(_s->cString, prefix.UTF8String, cStringLength) == 0); } - (bool)hasSuffix: (OFString *)suffix { - size_t cStringLength = [suffix UTF8StringLength]; + size_t cStringLength = suffix.UTF8StringLength; if (cStringLength > _s->cStringLength) return false; return (memcmp(_s->cString + (_s->cStringLength - cStringLength), - [suffix UTF8String], cStringLength) == 0); + suffix.UTF8String, cStringLength) == 0); } - (OFArray *)componentsSeparatedByString: (OFString *)delimiter options: (int)options { void *pool; OFMutableArray *array; - const char *cString = [delimiter UTF8String]; - size_t cStringLength = [delimiter UTF8StringLength]; + const char *cString = delimiter.UTF8String; + size_t cStringLength = delimiter.UTF8StringLength; bool skipEmpty = (options & OF_STRING_SKIP_EMPTY); size_t last; OFString *component; array = [OFMutableArray array]; @@ -1141,18 +1141,18 @@ if (memcmp(_s->cString + i, cString, cStringLength) != 0) continue; component = [OFString stringWithUTF8String: _s->cString + last length: i - last]; - if (!skipEmpty || [component length] > 0) + if (!skipEmpty || component.length > 0) [array addObject: component]; i += cStringLength - 1; last = i + 1; } component = [OFString stringWithUTF8String: _s->cString + last]; - if (!skipEmpty || [component length] > 0) + if (!skipEmpty || component.length > 0) [array addObject: component]; [array makeImmutable]; objc_autoreleasePoolPop(pool);