Pular para o conteúdo principal

abi_specific_integer_mapping_extra

Detalhes sobre o diagnóstico 'abi_specific_integer_mapping_extra' produzido pelo analisador do Dart.

Classes extending 'AbiSpecificInteger' must have exactly one 'AbiSpecificIntegerMapping' annotation specifying the mapping from ABI to a 'NativeType' integer with a fixed size.

Descrição

#

O analisador emite este diagnóstico quando uma classe que estende AbiSpecificInteger tem mais de uma anotação AbiSpecificIntegerMapping.

Exemplo

#

O código a seguir produz este diagnóstico porque há duas anotações AbiSpecificIntegerMapping na classe C:

dart
import 'dart:ffi';
​
@AbiSpecificIntegerMapping({Abi.macosX64: Int8()})
@AbiSpecificIntegerMapping({Abi.linuxX64: Uint16()})
final class C extends AbiSpecificInteger {
  const C();
}

Correções comuns

#

Remova todas as anotações, exceto uma, mesclando os argumentos conforme necessário:

dart
import 'dart:ffi';
​
@AbiSpecificIntegerMapping({Abi.macosX64: Int8(), Abi.linuxX64: Uint16()})
final class C extends AbiSpecificInteger {
  const C();
}

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.