Code Ruby
Ruby s’exécute en CRuby compilé en WebAssembly. Aucun Ruby n’est requis sur votre machine.
| Symbole | Rôle |
|---|---|
$input | La valeur reçue sur le port d’entrée, déjà décodée depuis JSON |
$vars | Les variables de run |
puts | Écrit dans le journal de l’exécution |
| La dernière expression | Sa valeur part sur le port result, encodée en JSON |
Notez les variables globales ($input, $vars) : c’est la convention Ruby
pour ce qui vient de l’extérieur du script.
Exemple
Section titled “Exemple”commandes = $input["commandes"]
payees = commandes.select { |c| c["statut"] == "payee" }total = payees.sum { |c| c["montant"] }
puts "#{payees.size} commandes payées, total #{total} €"
{ "nombre" => payees.size, "total" => total }Bibliothèque standard
Section titled “Bibliothèque standard”La bibliothèque standard de Ruby est disponible : json, digest, base64,
time, uri, set…
require "digest"
{ "empreinte" => Digest::SHA256.hexdigest($input["corps"]) }Paquets externes
Section titled “Paquets externes”Le champ packages accepte des gems pur Ruby. Une gem contenant une
extension native est refusée et l’exécution part sur le port error.