Add range-related utility properties/methods
This commit is contained in:
parent
cb674c9ac3
commit
169eb7e71a
@ -42,6 +42,17 @@
|
||||
*/
|
||||
@property (readonly) NSData *dataWithTerminatedCString;
|
||||
|
||||
/* Range manipulation.
|
||||
*/
|
||||
|
||||
@property (readonly) NSRange startRange;
|
||||
@property (readonly) NSRange fullRange;
|
||||
@property (readonly) NSRange endRange;
|
||||
|
||||
-(NSRange) rangeAfterRange:(NSRange)aRange;
|
||||
-(NSRange) rangeFromEndOfRange:(NSRange)aRange;
|
||||
-(NSRange) rangeToEndFrom:(NSRange)aRange;
|
||||
|
||||
/** Returns an NSData object containing a blank C string (i.e. a byte sequence
|
||||
of length 1, containing the null character '\0').
|
||||
*/
|
||||
|
||||
@ -37,6 +37,30 @@
|
||||
}
|
||||
}
|
||||
|
||||
-(NSRange) startRange {
|
||||
return NSMakeRange(0, 0);
|
||||
}
|
||||
|
||||
-(NSRange) fullRange {
|
||||
return NSMakeRange(0, self.length);
|
||||
}
|
||||
|
||||
-(NSRange) endRange {
|
||||
return NSMakeRange(self.length, 0);
|
||||
}
|
||||
|
||||
-(NSRange) rangeAfterRange:(NSRange)aRange {
|
||||
return NSMakeRange(NSMaxRange(aRange), self.length - NSMaxRange(aRange));
|
||||
}
|
||||
|
||||
-(NSRange) rangeFromEndOfRange:(NSRange)aRange {
|
||||
return NSMakeRange(NSMaxRange(aRange) - 1, self.length - NSMaxRange(aRange) + 1);
|
||||
}
|
||||
|
||||
-(NSRange) rangeToEndFrom:(NSRange)aRange {
|
||||
return NSMakeRange(aRange.location, self.length - aRange.location);
|
||||
}
|
||||
|
||||
+(NSData *) dataWithBlankCString {
|
||||
return [NSData dataWithBytes:"\0"
|
||||
length:1];
|
||||
|
||||
Loading…
Reference in New Issue
Block a user