You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-ios/SessionUtilitiesKit/General/Data+Utilities.swift

38 lines
1004 B
Swift

// Copyright © 2022 Rangeproof Pty Ltd. All rights reserved.
import Foundation
public extension Data {
func removingIdPrefixIfNeeded() -> Data {
var result = self
if result.count == 33 && SessionId.Prefix(from: result.toHexString()) != nil { result.removeFirst() }
return result
}
func appending(_ other: Data) -> Data {
var mutableData: Data = Data()
mutableData.append(self)
mutableData.append(other)
return mutableData
}
func appending(_ other: [UInt8]) -> Data {
var mutableData: Data = Data()
mutableData.append(self)
mutableData.append(contentsOf: other)
return mutableData
}
}
@objc public extension NSData {
@objc func removingIdPrefixIfNeeded() -> NSData {
var result = self as Data
if result.count == 33 && SessionId.Prefix(from: result.toHexString()) != nil { result.removeFirst() }
return result as NSData
}
}