Crate switchboard_solana::prelude::borsh
Modules§
- A facade around all the types we need from the
std
,core
, andalloc
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 intostruct 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.