missing_field_type_in_struct
structクラスのフィールドには、'int'、'double'、または'Pointer'の明示的に宣言された型が必要です。
説明
#StructまたはUnionのサブクラス内のフィールドに型注釈がない場合、アナライザーはこの診断を生成します。すべてのフィールドには明示的な型が必要であり、その型はint、double、Pointer、またはStructまたはUnionのいずれかのサブクラスである必要があります。
FFI の詳細については、dart:ffi を使用した C の相互運用 を参照してください。
例
#以下のコードは、フィールドstrに型注釈がないため、この診断を生成します。
dart
import 'dart:ffi';
final class C extends Struct {
external var str;
@Int32()
external int i;
}一般的な修正
#フィールドの型を明示的に指定してください
dart
import 'dart:ffi';
import 'package:ffi/ffi.dart';
final class C extends Struct {
external Pointer<Utf8> str;
@Int32()
external int i;
}