Re-exports§
pub extern crate paste;
pub use categorize::Categorize;
pub use categorize::SborEnum;
pub use categorize::SborTuple;
pub use decode::Decode;
pub use decoder::BorrowingDecoder;
pub use decoder::DecodeError;
pub use decoder::Decoder;
pub use decoder::VecDecoder;
pub use encode::Encode;
pub use encoder::EncodeError;
pub use encoder::Encoder;
pub use encoder::VecEncoder;
pub use path::SborPath;
pub use path::SborPathBuf;
pub use basic::*;
pub use constants::*;
pub use encoded_wrappers::*;
pub use payload_validation::*;
pub use schema::*;
pub use value::*;
pub use value_kind::*;
pub use versioned::*;
Modules§
- SBOR basic, no custom types
- SBOR Categorize trait
- SBOR codec for core Rust types.
- SBOR constants
- SBOR decode trait.
- SBOR decoding.
- SBOR encode trait.
- SBOR payload wrappers. These are new types around an encoded payload or sub-payload, with helper methods / traits implemented. They can be used as a more efficient wrapper a ScryptoValue if the content of that value is not needed.
- SBOR encoding.
- SBOR paths.
- SBOR payload validation.
- Each module should have its own prelude, which:
- SBOR textual representations
- A facade of Rust types.
- SBOR Schema
- SBOR structured payload traversal.
- SBOR value model and any decoding/encoding.
- SBOR value kinds - ie the types of value that are supported.
- Simpler traits specific to encodability/decodability against vec-based encoders/decoders
- Data model versioning helper macro
Macros§
- This macro is intended for creating a data model which supports versioning. This is useful for creating an SBOR data model which can be updated in future.
- This macro is intended for creating a data model which supports versioning. This is useful for creating an SBOR data model which can be updated in future. In future, enum variants can be added, and automatically mapped to.
- NOTE: This should probably be moved out of sbor to its own crate.
Structs§
Traits§
- This trait is output for unique unskipped single children of enum variants, when
#[sbor(impl_variant_traits)]
is specified on an Enum or#[sbor(impl_variant_trait)]
is specified on a single Enum variant.
Derive Macros§
- Derive code that returns the value kind - specifically for Basic SBOR.
- Derive code that decodes this data structure from a byte array - specifically for Basic SBOR.
- Derive code that describes the type - specifically for Basic SBOR.
- Derive code that encodes this data structure - specifically for Basic SBOR.
- A macro for outputting tests and marker traits to assert that a type has maintained its shape over time.
- Derive code that returns the value kind.
- Derive code that decodes this data structure from a byte array.
- Derive code that describes this type.
- Derive code that encodes this data structure
- An empty derive which exists solely to allow the helper “sbor” attribute to be used without generating a compile error.