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

無効な_型_の_ライブラリ_外_での_使用

クラス '{0}' は final クラスであるため、そのライブラリ外で拡張することはできません。

クラス '{0}' は interface クラスであるため、そのライブラリ外で拡張することはできません。

クラス '{0}' は sealed クラスであるため、そのライブラリ外で拡張、実装、または mixin することはできません。

クラス '{0}' は base クラスであるため、そのライブラリ外で実装することはできません。

クラス '{0}' は final クラスであるため、そのライブラリ外で実装することはできません。

クラス '{0}' は final クラスであるため、そのライブラリ外で mixin の superclass 制約として使用することはできません。

Mixin '{0}' は base mixin であるため、そのライブラリ外で実装することはできません。

説明

#

アナライザーは、extendsimplementswith、または on 句で、そのクラスまたは mixin の宣言における修飾子によっては許可されない方法でクラスまたは mixin が使用された場合に、この診断を生成します。

メッセージは、宣言がどのように使用されているか、およびなぜ許可されていないかを指定します。

#

base クラス A を定義するファイル a.dart があるとします。

dart
base class A {}

以下のコードは、クラス B がクラス A を実装していますが、base 修飾子が A の定義ライブラリ外での実装を禁止しているため、この診断を生成します。

dart
import 'a.dart';

final class B implements A {}

一般的な修正

#

この型の使用は、宣言ライブラリ外では制限されています。同様の機能を提供できる、別の制限のない型が利用可能な場合は、その型を置き換えてください。

dart
class B implements C {}
class C {}

適切な別の型がない場合は、その型を削除し、場合によっては句全体を削除してください。

dart
class B {}