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

non_const_call_to_literal_constructor

このインスタンス生成は、{0} コンストラクタが `@literal` としてマークされているため、'const' である必要があります。

説明

#

コンストラクタのすべての引数が定数であるにもかかわらず、literal アノテーションが付いたコンストラクタが const キーワードを使用せずに呼び出された場合に、アナライザーはこの診断を生成します。このアノテーションは、コンストラクタが可能な限り定数値を生成するために使用されるべきであることを示します。

#

次のコードは、この診断を生成します

dart
import 'package:meta/meta.dart';

class C {
  @literal
  const C();
}

C f() => C();

一般的な修正

#

コンストラクタ呼び出しの前に const キーワードを追加してください

dart
import 'package:meta/meta.dart';

class C {
  @literal
  const C();
}

void f() => const C();