Saltar al contenido principal

Definiciones de tipos

Aprende sobre los alias de tipo (type aliases) en Dart.

Un alias de tipo (type alias), a menudo llamado typedef porque se declara con la palabra clave typedef, es una forma concisa de referirse a un tipo. Aquí tienes un ejemplo de cómo declarar y usar un alias de tipo llamado IntList:

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

Un alias de tipo puede tener parámetros de tipo:

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

Recomendamos utilizar tipos de función en línea (inline function types) en lugar de typedefs para funciones, en la mayoría de las situaciones. Sin embargo, los typedefs de función aún pueden ser útiles:

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!
}