1.23 Tuple

Les tuples KC3 sont des tableaux immuables de Tag. Ils contiennent un nombre fixe de valeurs constantes, de n’importe quel type. L’accès aux tuples est très rapide.

Les tuples peuvent être utilisés pour retourner plusieurs valeurs depuis une fonction. Par exemple, un appel de fonction réussi pourrait produire un tuple {:ok, result}, tandis qu’une erreur pourrait produire {:error, "Message", data, trace}.

1.23.1 Exemples

ikc3> a = {:ok, "My title", "Hello, world !"}
{:ok, "My title", "Hello, world !"}

La déstructuration fonctionne avec les tuples pour extraire les valeurs :

ikc3> {:ok, title, message} = ^ a
{:ok, "My title", "Hello, world !"}
ikc3> title
"My title"
ikc3> message
"Hello, world !"

La syntaxe avec crochets permet d’interroger la position d’un tag dans un tuple :

ikc3> a[0]
:ok
ikc3> a[1]
"My title"
ikc3> a[2]
"Hello, world !"

Vous pouvez aussi utiliser la fonction KC3.access pour le même résultat :

ikc3> a = {:ok, "My title", "Hello, world !"}
{:ok, "My title", "Hello, world !"}
ikc3> access(a, [0])
:ok
ikc3> access(a, [1])
"My title"
ikc3> access(a, [2])
"Hello, world !"

Top : Documentation KC3

Précédent : 1.22 Sym

Suivant : 1.24 Variable