コンテンツにスキップ

Ruby コード

Ruby は WebAssembly にコンパイルされた CRuby で実行されます。 お使いのマシンに Ruby は不要です。

シンボル役割
$input入力ポートで受け取った値。JSON からデコード済みです
$vars実行変数
puts実行ログに書き込みます
最後の式その値が JSON にエンコードされて result ポートに送られます

グローバル変数$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 の標準ライブラリが使えます。jsondigestbase64timeuriset など。

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

packages フィールドは ピュア Ruby の gem を受け取ります。 ネイティブ拡張を含む gem は拒否され、実行は error ポートへ進みます。