소스 검색

Add range-related utility properties/methods

master
Said Achmiz 4 년 전
부모
커밋
169eb7e71a
2개의 변경된 파일35개의 추가작업 그리고 0개의 파일을 삭제
  1. 11
    0
      NSData+SA_NSDataExtensions.h
  2. 24
    0
      NSData+SA_NSDataExtensions.m

+ 11
- 0
NSData+SA_NSDataExtensions.h 파일 보기

@@ -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').
*/

+ 24
- 0
NSData+SA_NSDataExtensions.m 파일 보기

@@ -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…
취소
저장