Another serialization system: minimalist and canonicalization.
default
— Default features:std
, utilizesfaster-hex
for hexadecimal operations and enables bytes standard features.std
(enabled by default) — Default features:std
, utilizesfaster-hex
for hexadecimal operations and enables bytes standard features.bytes_vec
- Introduced in version 0.8, the 0.8 molecule defaults to bytes, which has implications for use in the CKB runtime. Thebytes_vec
feature provides users with a compatibility option to maintain consistency with previous versions.
When used in CKB scripts, no-std needs to be specified.
molecule = { version = "0.7", default-features = false }
Particularly, for versions later than 0.8, you need to additionally specify the bytes_vec feature.
molecule = { version = "0.8.0", default-features = false, features = ["bytes_vec"] }
The official schema compiler and code generator are written in Rust, so you can install it via Cargo:
cargo install moleculec --locked
Note: the official code generator is only support two languages: Rust and C.
-
You can use the follow command to generate the code:
moleculec --language <language> --schema-file <schema-file>
-
More details can be found by the follow command:
moleculec --help
Molecule's reference implementation is in Rust and C.
Implementations in other languages are maintained by respective authors.
The minimum supported version is 1.56.1. The current Molecule version is not guaranteed to build on Rust versions earlier than the minimum supported version.
Licensed under MIT License.