Jeff Lockhart
01/19/2021, 7:52 AMNSNumber
Objective-C reference to a Kotlin Number
? The docs describe casting the other way, but not clear how to accomplish the reverse.Jeff Lockhart
01/19/2021, 8:33 AMfun NSNumber.toNumber(): Number {
return when (CFNumberGetType(this as CFNumberRef)) {
kCFNumberSInt8Type, kCFNumberSInt16Type, kCFNumberSInt32Type, kCFNumberSInt64Type,
kCFNumberIntType, kCFNumberCFIndexType, kCFNumberNSIntegerType -> integerValue
kCFNumberFloat32Type, kCFNumberFloat64Type, kCFNumberFloatType, kCFNumberCGFloatType -> floatValue
kCFNumberCharType -> charValue
kCFNumberShortType -> shortValue
kCFNumberLongType, kCFNumberLongLongType -> longLongValue
kCFNumberDoubleType -> doubleValue
else -> longLongValue
}
}
But it doesn’t like casting NSNumber
to CFNumberRef
. Says “this cast can never succeed”. Are toll-free bridged type casts supported?Artyom Degtyarev [JB]
01/19/2021, 9:08 AMDuplicate
section there, something might be relevant for your case.