Salta ai contenuti

Codice Ruby

Ruby si esegue come CRuby compilato in WebAssembly. Non è richiesto nessun Ruby sulla macchina.

SimboloRuolo
$inputIl valore ricevuto sulla porta di input, già decodificato da JSON
$varsLe variabili di run
putsScrive nel log dell’esecuzione
L’ultima espressioneIl suo valore parte sulla porta result, codificato in JSON

Si noti l’uso delle variabili globali ($input, $vars): è la convenzione Ruby per ciò che proviene dall’esterno dello script.

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 }

La libreria standard di Ruby è disponibile: json, digest, base64, time, uri, set

require "digest"
{ "empreinte" => Digest::SHA256.hexdigest($input["corps"]) }

Il campo packages accetta gem puramente Ruby. Una gem che contiene un’estensione nativa viene rifiutata e l’esecuzione parte sulla porta error.