Modules§

  • A facade around all the types we need from the std, core, and alloc crates. This avoids elaborate import wrangling having to happen in every module.
  • Since Borsh is not a self-descriptive format we have a way to describe types serialized with Borsh so that we can deserialize serialized blobs without having Rust types available. Additionally, this can be used to serialize content provided in a different format, e.g. JSON object {"user": "alice", "message": "Message"} can be serialized by JS code into Borsh format such that it can be deserialized into struct UserMessage {user: String, message: String} on Rust side.

Traits§

  • A data-structure that can be de-serialized from binary format by NBOR.
  • The declaration and the definition of the type that can be used to (de)serialize Borsh without the Rust type that produced it.
  • A data-structure that can be serialized into binary format by NBOR.

Functions§

  • Serialize an object into a vector of bytes.
  • Serializes an object directly into a Writer.
  • Deserialize this instance from a slice of bytes, but assume that at the beginning we have bytes describing the schema of the type. We deserialize this schema and verify that it is correct.
  • Serialize object into a vector of bytes and prefix with the schema serialized as vector of bytes in Borsh format.

Derive Macros§