Logo de kxs.frFiches pour l'informatique

Enregistrements

Déclaration

Les enregistrements (records) ou produits nommés sont des données structurées en Ocaml. Ils doivent être déclarés avant d'être utilisés :

# type coord = { x : int; y : int};;
type coord = { x : int; y : int; }

On peut ensuite les utiliser :

# let a = { x = 1; y = 2};;
val a : coord = {x = 1; y = 2}}

Le mot-clé with permet de créer un enregistrement à partir d'un autre en modifiant certains champs :

# let b = { a with x = 3};;
val b : coord = {x = 3; y = 2}

Accès aux éléments

On peut accéder aux champs d'un enregistrement avec la notation pointée :

# a.x;;
- : int = 1
# a.y;;
- : int = 2

On peut également utiliser les motifs comme pour les produits Si on veut ignorer un élément on utilise le nom de variable _ :

# let {x = abs} = a;;
val abs : int = 1