これらの関数は、標準ライブラリの一部としてすべてのRunbookで利用できます。
演算子
基本的な数学演算子と比較演算子:
// Additionoutput "sum" {value = 1 + 2 // or std::add(1, 2)}// Subtractionoutput "diff" {value = 5 - 3 // or std::minus(5, 3)}// Multiplicationoutput "product" {value = 4 * 3 // or std::multiply(4, 3)}// Divisionoutput "quotient" {value = 10 / 2 // or std::div(10, 2)}// Modulooutput "remainder" {value = 10 % 3 // or std::modulo(10, 3)}
ハッシュ関数
// SHA256 hashoutput "hash" {value = std::sha256("hello world")}// Keccak256 hashoutput "keccak" {value = std::keccak256("hello world")}
Hex関数
// Encode string's raw bytes to hex (returns string with 0x prefix)output "hex" {value = std::encode_hex("hello, world")}// > hex: 0x68656c6c6f2c20776f726c64// Decode from hex (returns buffer)output "decoded" {value = std::decode_hex("0x68656c6c6f2c20776f726c64")}// > decoded: 0x68656c6c6f2c20776f726c64
Base58関数
// Encode to base58 (accepts buffer or hex string)output "base58" {value = std::encode_base58("0x68656c6c6f")}// > base58: Cn8eVZg// Decode from base58 (returns buffer)output "decoded" {value = std::decode_base58("Cn8eVZg")}// > decoded: 0x68656c6c6f
Base64関数
// Encode to base64 (accepts buffer or hex string)output "encoded" {value = std::encode_base64("0x48656c6c6f20776f726c6421")}// > encoded: SGVsbG8gd29ybGQh// Decode from base64 (returns buffer)output "decoded" {value = std::decode_base64("SGVsbG8gd29ybGQh")}// > decoded: 0x48656c6c6f20776f726c6421
JSON関数
// Query JSON with jq syntaxoutput "message" {value = std::jq("{ \"message\": \"Hello world!\" }", ".message")}
リスト関数
// Get element at indexoutput "entry" {value = std::index(['a', 'b', 'c'], 1) // Returns 'b'}
アサーション関数
// Assert equalityoutput "check_eq" {value = std::assert_eq(action.example.result, 1)}// Assert not equaloutput "check_ne" {value = std::assert_ne(action.example.result, 0)}// Assert greater than / greater than or equaloutput "check_gt" {value = std::assert_gt(action.example.result, 0)}// Assert less than / less than or equaloutput "check_lt" {value = std::assert_lt(action.example.result, 100)}
Is this page helpful?