Código Ruby
Ruby se ejecuta como CRuby compilado a WebAssembly. No se requiere ningún Ruby en su máquina.
La API
Section titled “La API”| Símbolo | Función |
|---|---|
$input | El valor recibido en el puerto de entrada, ya descodificado desde JSON |
$vars | Las variables de ejecución |
puts | Escribe en el registro de la ejecución |
| La última expresión | Su valor sale por el puerto result, codificado en JSON |
Observe las variables globales ($input, $vars): es la convención de Ruby para lo que
viene del exterior del script.
Ejemplo
Section titled “Ejemplo”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 }Biblioteca estándar
Section titled “Biblioteca estándar”La biblioteca estándar de Ruby está disponible: json, digest, base64, time, uri,
set…
require "digest"
{ "empreinte" => Digest::SHA256.hexdigest($input["corps"]) }Paquetes externos
Section titled “Paquetes externos”El campo packages acepta gems de Ruby puro. Una gem que contenga una extensión nativa se
rechaza y la ejecución sale por el puerto error.