Μετάβαση στο περιεχόμενο

Κώδικας Ruby

Η Ruby εκτελείται ως CRuby μεταγλωττισμένη σε WebAssembly. Δεν απαιτείται καμία Ruby στο μηχάνημά σας.

ΣύμβολοΡόλος
$inputΗ τιμή που λαμβάνεται στη θύρα εισόδου, ήδη αποκωδικοποιημένη από JSON
$varsΟι μεταβλητές εκτέλεσης
putsΓράφει στο αρχείο καταγραφής της εκτέλεσης
Η τελευταία έκφρασηΗ τιμή της φεύγει στη θύρα result, κωδικοποιημένη σε JSON

Παρατηρήστε τις καθολικές μεταβλητές ($input, $vars): είναι η σύμβαση της Ruby για ό,τι προέρχεται από έξω από το σενάριο κώδικα.

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 }

Η τυπική βιβλιοθήκη της Ruby είναι διαθέσιμη: json, digest, base64, time, uri, set

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

Το πεδίο packages δέχεται gems καθαρής Ruby. Μια gem που περιέχει εγγενή επέκταση απορρίπτεται και η εκτέλεση φεύγει στη θύρα error.