1个不稳定版本
0.1.0 | 2023年11月1日 |
---|
#9 in #wasm32
31KB
577 行
账本KV
概述
账本KV是一个用Rust实现的键值存储库。此库的主要功能是以追加方式存储数据,从而有效地形成一个账本。此外,它支持使用SHA-256校验和进行账本条目的完整性检查。
此库专为智能合约环境设计,能够在wasm32目标上进行编译,同时在x86_64架构上也可用和可测试。
注意:此库仍在开发阶段。请自行承担使用风险。
安装
将LedgerKV添加到您的 Cargo.toml
[dependencies]
ledger-kv = "0.1.0"+
用法
以下是一个基本示例,以帮助您入门
use ledger_kv::LedgerKV; // Replace with your actual library name
use ledger_kv::EntryLabel;
use ledger_kv::Operation;
let data_dir = PathBuf::from("data/");
let description = "example_ledger";
// Create a new LedgerKV instance
let mut ledger = LedgerKV::new(data_dir, description);
// Perform an upsert operation
let key = vec![1, 2, 3];
let value = vec![4, 5, 6];
ledger.upsert(EntryLabel::NodeProvider, key, value).unwrap();
// Perform a delete operation
let key = vec![1, 2, 3];
ledger.delete(EntryLabel::NodeProvider, key).unwrap();
功能
- 追加存储:数据以追加方式存储,形成一个账本。
- 数据完整性:使用SHA-256校验和验证账本条目的完整性。
- 平台支持:专为wasm32和x86_64目标设计。
依赖项
此库完全用Rust实现。
贡献
我们欢迎贡献!如果您想贡献,请提交拉取请求。
许可证
根据以下任一许可证授权
- Apache License,版本2.0 (LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义的任何有意提交以包含在本作品中的贡献,均将按照上述方式双重许可,而无需任何额外的条款或条件。
依赖项
~5MB
~91K SLoC