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

型エイリアス

型エイリアス(typedef キーワードで宣言されるため、しばしば typedef と呼ばれます)は、型を参照するための簡潔な方法です。以下は、IntList という名前の型エイリアスを宣言して使用する例です。

dart
typedef IntList = List<int>;
IntList il = [1, 2, 3];

型エイリアスには型パラメータを含めることができます。

dart
typedef ListMapper<X> = Map<X, List<X>>;
Map<String, List<String>> m1 = {}; // Verbose.
ListMapper<String> m2 = {}; // Same thing but shorter and clearer.

ほとんどの場合、関数には typedef の代わりに インライン関数型 を使用することをお勧めします。ただし、関数 typedef は依然として有用な場合があります。

dart
typedef Compare<T> = int Function(T a, T b);

int sort(int a, int b) => a - b;

void main() {
  assert(sort is Compare<int>); // True!
}