mirror of
https://github.com/oxen-io/session-ios.git
synced 2023-12-13 21:30:14 +01:00
c6d44e59e2
- Using same clang format file for old and new files. - Moving out all TextSecure code to allow other clients (OS X, iOS) to integrate easily TextSecure functionality. - Use TextSecure API to signup.
77 lines
2.5 KiB
Objective-C
77 lines
2.5 KiB
Objective-C
#import <Foundation/Foundation.h>
|
|
|
|
@interface NSData (Util)
|
|
|
|
- (NSString *)encodedAsHexString;
|
|
|
|
- (const void *)bytesNotNull;
|
|
|
|
+ (NSData *)dataWithLength:(NSUInteger)length;
|
|
|
|
+ (NSData *)dataWithSingleByte:(uint8_t)value;
|
|
|
|
/// Decodes the data as a utf-8 string.
|
|
- (NSString *)decodedAsUtf8;
|
|
|
|
/// Decodes the data as an ascii string.
|
|
/// Throws when the data contains non-ascii character data (bytes larger than 127).
|
|
- (NSString *)decodedAsAscii;
|
|
|
|
/// Decodes the data as an ascii string.
|
|
/// Replaces any bad or non-printable characters with dots.
|
|
- (NSString *)decodedAsAsciiReplacingErrorsWithDots;
|
|
|
|
/// Finds the first index where the given sub data is present.
|
|
/// Returns nil if there is no such index.
|
|
- (NSNumber *)tryFindIndexOf:(NSData *)subData;
|
|
|
|
- (NSData *)skip:(NSUInteger)offset;
|
|
|
|
- (NSData *)take:(NSUInteger)takeCount;
|
|
|
|
- (NSData *)skipLast:(NSUInteger)skipLastCount;
|
|
|
|
- (NSData *)takeLast:(NSUInteger)takeLastCount;
|
|
|
|
/// Returns an NSData referencing a subrange of another NSData.
|
|
/// Modifying the original NSData will modify the result.
|
|
/// If the original is dealloced before the result, bad things happen to you.
|
|
- (NSData *)subdataVolatileWithRange:(NSRange)range;
|
|
|
|
/// Returns an NSData referencing the end of another NSData.
|
|
/// Modifying the original NSData will modify the result.
|
|
/// If the original is dealloced before the result, bad things happen to you.
|
|
- (NSData *)skipVolatile:(NSUInteger)offset;
|
|
|
|
/// Returns an NSData referencing the start of another NSData.
|
|
/// Modifying the original NSData will modify the result.
|
|
/// If the original is dealloced before the result, bad things happen to you.
|
|
- (NSData *)takeVolatile:(NSUInteger)takeCount;
|
|
|
|
/// Returns an NSData referencing the start of another NSData.
|
|
/// Modifying the original NSData will modify the result.
|
|
/// If the original is dealloced before the result, bad things happen to you.
|
|
- (NSData *)skipLastVolatile:(NSUInteger)skipLastCount;
|
|
|
|
/// Returns an NSData referencing the end of another NSData.
|
|
/// Modifying the original NSData will modify the result.
|
|
/// If the original is dealloced before the result, bad things happen to you.
|
|
- (NSData *)takeLastVolatile:(NSUInteger)takeLastCount;
|
|
|
|
- (uint8_t)uint8At:(NSUInteger)offset;
|
|
|
|
- (uint8_t)highUint4AtByteOffset:(NSUInteger)offset;
|
|
|
|
- (uint8_t)lowUint4AtByteOffset:(NSUInteger)offset;
|
|
|
|
- (NSString *)encodedAsBase64;
|
|
|
|
@end
|
|
|
|
@interface NSMutableData (Util)
|
|
|
|
- (void)replaceBytesStartingAt:(NSUInteger)offset withData:(NSData *)data;
|
|
|
|
- (void)setUint8At:(NSUInteger)offset to:(uint8_t)newValue;
|
|
|
|
@end
|