abi_specific_integer_mapping_unsupported
無效對映到“{0}”;僅支援對映到“Int8”、“Int16”、“Int32”、“Int64”、“Uint8”、“Uint16”、“UInt32”和“Uint64”。
描述
#當 AbiSpecificIntegerMapping 註解的對映引數中的值不是以下任一整數型別時,分析器會產生此診斷資訊:
Int8Int16Int32Int64Uint8Uint16UInt32Uint64
示例
#以下程式碼會產生此診斷資訊,因為對映條目的值為 Array<Uint8>,這不是一個有效的整數型別:
dart
import 'dart:ffi';
@AbiSpecificIntegerMapping({Abi.macosX64 : Array<Uint8>(4)})
final class C extends AbiSpecificInteger {
const C();
}常見修復方法
#使用其中一個有效型別作為對映中的值
dart
import 'dart:ffi';
@AbiSpecificIntegerMapping({Abi.macosX64 : Int8()})
final class C extends AbiSpecificInteger {
const C();
}