Pular para o conteúdo principal

mismatched_annotation_on_struct_field

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

The annotation doesn't match the declared type of the field.

Descrição

#

O analisador gera este diagnóstico quando a anotação em um campo de uma subclasse de Struct ou Union não corresponde ao tipo Dart do campo.

Para mais informações sobre FFI, consulte interoperabilidade com C usando dart:ffi.

Exemplo

#

O código a seguir gera este diagnóstico porque a anotação Double não corresponde ao tipo Dart int:

dart
import 'dart:ffi';
​
final class C extends Struct {
  @Double()
  external int x;
}

Correções comuns

#

Se o tipo do campo está correto, então altere a anotação para que corresponda a ele:

dart
import 'dart:ffi';
​
final class C extends Struct {
  @Int32()
  external int x;
}

Se a anotação está correta, então altere o tipo do campo para que corresponda a ela:

dart
import 'dart:ffi';
​
final class C extends Struct {
  @Double()
  external double x;
}

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ê.