Jeff Lockhart
ByteArray
CFDataRef
NSData
SecCertificateRef
SecCertificateCreateWithData()
SecCertificateCopyData()
fun CFDataRef.toByteArray(): ByteArray { val length = CFDataGetLength(this) return UByteArray(length.toInt()).apply { val range = CFRangeMake(0, length) CFDataGetBytes(this@toByteArray, range, refTo(0)) }.toByteArray() }
UByteArray
refTo()
CValueRef<ByteVarOf<Byte>>
CValuesRef<UByteVarOf<UByte>>
CFDataGetBytes()
fun ByteArray.toCFData(): CFDataRef = CFDataCreate(null, toUByteArray().refTo(0), size.toLong())!!
toUByteArray()
toByteArray()
asUByteArray()
asByteArray()
A modern programming language that makes developers happier.