メインコンテンツにスキップ

extra_annotation_on_struct_field

Struct クラスのフィールドには、ネイティブ型を示すアノテーションが exactly one 指定されている必要があります。

説明

#

Struct のサブクラスにあるフィールドが、そのフィールドのネイティブ型を記述するアノテーションを more than one 持っている場合、アナライザーはこの診断を生成します。

FFI の詳細については、dart:ffi を使用した C の相互運用 を参照してください。

#

以下のコードでは、フィールド x がそのフィールドのネイティブ型を記述する two annotations を持っているため、この診断が生成されます。

dart
import 'dart:ffi';

final class C extends Struct {
  @Int32()
  @Int16()
  external int x;
}

一般的な修正

#

アノテーションを1つだけ残してすべて削除してください。

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