Ruby kod
Ruby se izvršava kao CRuby kompajliran u WebAssembly. Na vašoj mašini nije potreban nikakav Ruby.
| Simbol | Uloga |
|---|---|
$input | Vrednost primljena na ulaznom portu, već dekodirana iz JSON-a |
$vars | Promenljive izvršavanja |
puts | Piše u zapis izvršavanja |
| Poslednji izraz | Njegova vrednost odlazi na port result, kodirana u JSON |
Obratite pažnju na globalne promenljive ($input, $vars): to je Ruby
konvencija za ono što dolazi izvan skripte.
Primer
Section titled “Primer”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 }Standardna biblioteka
Section titled “Standardna biblioteka”Dostupna je Ruby standardna biblioteka: json, digest, base64, time,
uri, set…
require "digest"
{ "empreinte" => Digest::SHA256.hexdigest($input["corps"]) }Spoljašnji paketi
Section titled “Spoljašnji paketi”Polje packages prihvata čisto Ruby gem pakete. Gem koji sadrži nativno
proširenje se odbija, a izvršavanje odlazi na port error.