跳到主要内容

abi_specific_integer_mapping_missing

扩展 'AbiSpecificInteger' 的类必须恰好有一个 'AbiSpecificIntegerMapping' 注解,用于指定从 ABI 到固定大小的 'NativeType' 整数的映射。

描述

#

当扩展 AbiSpecificInteger 的类没有 AbiSpecificIntegerMapping 注解时,分析器会产生此诊断信息。

示例

#

以下代码会产生此诊断信息,因为类 C 上没有 AbiSpecificIntegerMapping 注解

dart
import 'dart:ffi';

final class C extends AbiSpecificInteger {
  const C();
}

常见修复方法

#

为类添加 AbiSpecificIntegerMapping 注解

dart
import 'dart:ffi';

@AbiSpecificIntegerMapping({Abi.macosX64 : Int8()})
final class C extends AbiSpecificInteger {
  const C();
}