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

メタデータ

メタデータを使用して、コードに追加情報を提供します。メタデータアノテーションは、@ 文字で始まり、その後にコンパイル時定数への参照(deprecated など)または定数コンストラクタへの呼び出しが続きます。

すべての Dart コードで利用できるアノテーションは 4 つあります: @Deprecated@deprecated@override、および @pragma です。@override の使用例については、クラスの拡張 を参照してください。@Deprecated アノテーションの使用例を次に示します。

dart
class Television {
  /// Use [turnOn] to turn the power on instead.
  @Deprecated('Use turnOn instead')
  void activate() {
    turnOn();
  }

  /// Turns the TV's power on.
  void turnOn() {
    ...
  }
  // ···
}

メッセージを指定したくない場合は @deprecated を使用できます。ただし、@Deprecated でメッセージを常に指定することを 推奨 します。

独自のメタデータアノテーションを定義できます。2 つの引数を受け取る @Todo アノテーションを定義する例を次に示します。

dart
class Todo {
  final String who;
  final String what;

  const Todo(this.who, this.what);
}

そして、その @Todo アノテーションを使用する例を次に示します。

dart
@Todo('Dash', 'Implement this function')
void doSomething() {
  print('Do something');
}

メタデータは、ライブラリ、クラス、typedef、型パラメータ、コンストラクタ、ファクトリ、関数、フィールド、パラメータ、または変数宣言の前、および import または export ディレクティブの前に表示できます。