Changeset 5394
- Timestamp:
- 03/14/08 17:13:12 (4 months ago)
- Files:
-
- libwired/trunk/libwired/data/wi-string.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
libwired/trunk/libwired/data/wi-string.c
r5348 r5394 77 77 #define _WI_STRING_FORMAT_BUFSIZ 64 78 78 79 #define _WI_STRING_GROW(string, n) \80 WI_STMT_START \81 if((string)->length + (n) >= (string)->capacity) \82 _wi_string_grow((string), (string)->length + (n)); \79 #define _WI_STRING_GROW(string, n) \ 80 WI_STMT_START \ 81 if((string)->length + (n) >= (string)->capacity) \ 82 _wi_string_grow((string), (string)->length + (n)); \ 83 83 WI_STMT_END 84 84 85 #define _WI_STRING_INDEX_ASSERT(string, index) \ 86 WI_ASSERT((index) <= (string)->length, \ 87 "index %d out of range (length %d) in \"%@\"", \ 85 #define _WI_STRING_RANGE_ASSERT(string, range) \ 86 WI_STMT_START \ 87 _WI_STRING_INDEX_ASSERT((string), (range).location); \ 88 _WI_STRING_INDEX_ASSERT((string), (range).location + (range).length); \ 89 WI_STMT_END 90 91 #define _WI_STRING_INDEX_ASSERT(string, index) \ 92 WI_ASSERT((index) <= (string)->length, \ 93 "index %d out of range (length %d) in \"%@\"", \ 88 94 (index), (string)->length, (string)) 89 95 … … 941 947 942 948 void wi_string_delete_characters_in_range(wi_string_t *string, wi_range_t range) { 943 _WI_STRING_ INDEX_ASSERT(string, range.location + range.length);949 _WI_STRING_RANGE_ASSERT(string, range); 944 950 945 951 if(range.location + range.length < string->length) { … … 1030 1036 1031 1037 wi_string_t * wi_string_substring_with_range(wi_string_t *string, wi_range_t range) { 1032 _WI_STRING_ INDEX_ASSERT(string, range.location + range.length);1033 1038 _WI_STRING_RANGE_ASSERT(string, range); 1039 1034 1040 return wi_autorelease(wi_string_init_with_bytes(wi_string_alloc(), string->string + range.location, range.length)); 1035 1041 }
