EN
importPour l'utiliser : import Data.HashMap

Data.HashMap — une table de hachage indexée par Hashable + Eq

Synopsis
empty : HashMap k v

La table de hachage vide.

singleton : Hashable k => Eq k => k -> v -> HashMap k v

Une table de hachage à une seule entrée.

fromList : Hashable k => Eq k => List (k, v) -> HashMap k v

Construit à partir d'une liste de paires ; en cas de clés en double, les dernières entrées l'emportent.

isEmpty : HashMap k v -> Bool

La table est-elle vide ?

member : Hashable k => Eq k => k -> HashMap k v -> Bool

k est-elle présente ?

findWithDefault : Hashable k => Eq k => v -> k -> HashMap k v -> v

La valeur associée à k, ou une valeur par défaut.

insert : Hashable k => Eq k => k -> v -> HashMap k v -> HashMap k v

Insère (ou remplace) la valeur associée à k. O(log n).

insertWith : Hashable k => Eq k => (v -> v -> v) -> k -> v -> HashMap k v -> HashMap k v

Insère avec une fonction de combinaison f new old lorsque k est déjà associée.

delete : Hashable k => Eq k => k -> HashMap k v -> HashMap k v

Supprime k (sans effet si absente).

toList : HashMap k v -> List (k, v)

Toutes les entrées, dans un ordre non spécifié mais DÉTERMINISTE (par hachage, puis par ordre d'insertion dans l'alvéole — identique sur les deux backends).

keys : HashMap k v -> List k

Toutes les clés (voir toList pour l'ordre).

values : HashMap k v -> List v

Toutes les valeurs.

size : HashMap k v -> Nat

Le nombre d'entrées.

union : Hashable k => Eq k => HashMap k v -> HashMap k v -> HashMap k v

Union biaisée à gauche : sur les clés communes, les entrées de a l'emportent sur celles de b.

mapValues : (v -> w) -> HashMap k v -> HashMap k w

Applique une fonction à toutes les valeurs.