44 lines
945 B
Swift
44 lines
945 B
Swift
|
|
//
|
||
|
|
// Untitled.swift
|
||
|
|
// Pods
|
||
|
|
//
|
||
|
|
// Created by mayue on 2025/1/14.
|
||
|
|
//
|
||
|
|
|
||
|
|
extension NSNumber {
|
||
|
|
var valueType: CFNumberType {
|
||
|
|
return CFNumberGetType(self as CFNumber)
|
||
|
|
}
|
||
|
|
|
||
|
|
var numricValue: Any {
|
||
|
|
switch valueType {
|
||
|
|
case .sInt8Type,
|
||
|
|
.sInt16Type,
|
||
|
|
.sInt32Type,
|
||
|
|
.charType,
|
||
|
|
.shortType,
|
||
|
|
.intType,
|
||
|
|
.longType,
|
||
|
|
.cfIndexType,
|
||
|
|
.nsIntegerType:
|
||
|
|
return intValue;
|
||
|
|
|
||
|
|
case
|
||
|
|
.sInt64Type,
|
||
|
|
.longLongType:
|
||
|
|
return int64Value;
|
||
|
|
|
||
|
|
case .float32Type,
|
||
|
|
.float64Type,
|
||
|
|
.floatType,
|
||
|
|
.doubleType,
|
||
|
|
.cgFloatType,
|
||
|
|
.maxType:
|
||
|
|
return doubleValue;
|
||
|
|
|
||
|
|
@unknown default:
|
||
|
|
return doubleValue;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|