#klvm #byte #programs #processing #structures #values #utilities

klvm-utils

用于处理 klvm 程序和结构的实用函数

12 个版本 (破坏性更新)

0.10.0 2024年7月11日
0.8.0 2024年5月16日
0.5.1 2024年2月21日
0.2.12 2023年11月21日
0.2.7 2023年7月24日

#4#klvm

Download history 321/week @ 2024-05-12 44/week @ 2024-05-19 13/week @ 2024-05-26 13/week @ 2024-06-02 26/week @ 2024-06-09 18/week @ 2024-06-16 11/week @ 2024-06-23 5/week @ 2024-06-30 268/week @ 2024-07-07 36/week @ 2024-07-14 1/week @ 2024-07-21 127/week @ 2024-07-28 6/week @ 2024-08-04 10/week @ 2024-08-11

每月下载 145
8crate(7个直接使用)中使用

Apache-2.0

65KB
2K SLoC

KLVM 工具集

这为与 KLVM 值一起工作提供了各种常用实用工具。

柯里化示例

use klvm_utils::CurriedProgram;
use klvm_traits::{ToKlvm, klvm_curried_args};
use klvmr::{Allocator, serde::node_to_bytes};

let a = &mut Allocator::new();

let program = a.one();

let ptr = CurriedProgram {
    program,
    args: klvm_curried_args!(42, 75),
}
.to_klvm(a)
.unwrap();

let hex = hex::encode(node_to_bytes(a, ptr).unwrap());

// (a (q . 1) (c (q . 42) (c (q . 75) 1)))
assert_eq!(hex, "ff02ffff0101ffff04ffff012affff04ffff014bff01808080");

依赖关系

~11MB
~303K SLoC