25 个版本

0.8.0 2024 年 3 月 19 日
0.7.5 2023 年 2 月 28 日
0.7.3 2022 年 1 月 24 日
0.7.2 2021 年 7 月 29 日
0.0.4 2019 年 7 月 30 日

#1375 in 解析实现

Download history 2/week @ 2024-04-23 2/week @ 2024-06-11 2/week @ 2024-07-02

1,013 每月下载量

MIT 许可证

215KB
5.5K SLoC

分子

License GitHub Actions

另一个序列化系统:极简和规范化。

文档

特性

  • default — 默认特性:std,使用 faster-hex 进行十六进制操作,并启用 bytes 标准特性。
  • std(默认启用)— 默认特性:std,使用 faster-hex 进行十六进制操作,并启用 bytes 标准特性。
  • bytes_vec - 从版本 0.8 开始引入,0.8 版本的分子默认使用 bytes,这在 CKB 运行时中有影响。`bytes_vec` 特性为用户提供了一个与之前版本保持一致的兼容性选项。

在 CKB 脚本中使用

在 CKB 脚本中使用时,需要指定 no-std。

molecule = { version = "0.7", default-features = false }

特别是,对于版本高于 0.8 的情况,还需要额外指定 bytes_vec 特性。

molecule = { version = "0.8.0", default-features = false, features = ["bytes_vec"] }

工具

架构编译器和代码生成器

安装

官方架构编译器和代码生成器是用 Rust 编写的,因此您可以通过 Cargo 安装它

cargo install moleculec --locked

注意:官方代码生成器只支持两种语言: RustC

使用方法

  • 您可以使用以下命令生成代码

    moleculec --language <language> --schema-file <schema-file>
    
  • 更多详细信息可以通过以下命令找到

    moleculec --help
    

其他语言

分子的参考实现是 Rust 和 C。

其他语言的实现由各自的作者维护。

编辑器插件

基准测试

支持的 Rust 版本

最低支持的版本是 1.56.1。当前 Molecule 版本无法保证在低于最低支持版本的 Rust 版本上构建。

许可协议

遵循 MIT 许可协议

依赖项

~6–16MB
~227K SLoC