Parcours
/
Gleam
Gleam
/
Programme
/
Génériques
Gé

Génériques en Gleam

10 exercices

À propos de Génériques

Un type est un type générique lorsqu'il peut contenir des valeurs de n'importe quel type à l'aide d'un paramètre de type.

Par exemple, ce type Box a le paramètre de type a (écrit avec une lettre minuscule).

pub type Box(a) {
  Box(a)
}

Le paramètre de type a est un espace réservé pour n'importe quel type, donc Box peut être utilisé avec des strings, des entiers ou tout autre type.

Box("Hello, Joe!") // The type is Box(String)

Box(42) // The type is Box(Int)

Un type peut prendre plusieurs paramètres de type en les séparant par des virgules.

pub type Pair(a, b) {
  Pair(a, b)
}

Fonctions génériques

On peut aussi utiliser des paramètres de type dans les arguments des fonctions.

Cette fonction prend une valeur de type a et appelle deux fois une fonction qui prend un a et renvoie un b.

pub fn twice(value: a, f: fn(a) -> b) -> b {
  f(value)
  f(value)
}
// The type is fn(String, fn(String) -> Nil) -> Nil
twice("Hello, Joe!", io.println)
Modifie via GitHub Le lien s'ouvre dans une nouvelle fenêtre ou un nouvel onglet

Apprends Génériques

L'entraînement est verrouillé

Déverrouille 3 exercices de plus pour t'entraîner sur Génériques