struct

Diceware::Roll

Inherits Struct < Value < Object

Un tirage Diceware : 5 dés à 6 faces, chaque chiffre ∈ [1, 6].

roll = Diceware::Roll.from_string("13456")
roll.digits   # => [1, 3, 4, 5, 6]
roll.to_index # => 1063 (index 0-based dans une liste de 7776)
roll.to_s     # => "13456"

Constants

DICE = 5

Nombre de dés par tirage Diceware standard (5 × 6 = 7776 mots).

Constructors

from_index(index : Int32) : Roll

Construit le tirage correspondant à index 0-based dans une liste de 7776 mots. Inverse de to_index.

Source
from_string(s : String) : Roll

Parse une chaîne "13456" (5 chiffres ASCII 1..6). Lève Diceware::Error si la chaîne est invalide.

Source
new(digits : Array(Int32))
Source
secure

Tire un Roll uniformément avec Random::Secure.

Source

Instance methods

digits

Les 5 chiffres du tirage, dans l'ordre de lecture.

Source
to_index

Convertit le tirage en index 0-based dans une liste de 6^5 = 7776 mots. Lecture : 1 3 4 5 6 est interprété comme un nombre en base 6 où chaque chiffre est décalé de -1 (les dés vont de 1..6, pas 0..5).

1 1 1 1 1 → 0 6 6 6 6 6 → 7775

Source
to_s(io : IO) : Nil

Same as #inspect(io).

Source