Crate rustysbe

Crate rustysbe 

Source
Expand description

RustySBE - High-performance Simple Binary Encoding (SBE) for Rust

This crate provides zero-copy, high-performance SBE encoding and decoding capabilities optimized for financial trading systems and other low-latency applications.

§Features

  • Zero-copy decoding - Read directly from network buffers
  • SIMD-aligned buffers - Optimized memory access patterns
  • Type-safe message handling - Compile-time message validation
  • Group iteration - Efficient handling of repeating groups
  • Variable-length data - Support for varchar fields
  • High performance - Minimal allocations and overhead

§Example

use rustysbe::{SbeDecoder, SbeEncoder, SbeMessage};

// Encode a message
let mut encoder = SbeEncoder::new(1, 0, 64);
encoder.write_u64(0, 12345)?;
encoder.write_string(8, 16, "BTCUSDT")?;
let message = encoder.finalize()?;

// Decode the message
let decoder = SbeDecoder::new(&message)?;
let value = decoder.read_u64(0)?;
let symbol = decoder.read_string(8, 16)?;

Re-exports§

pub use buffer::SbeBuffer;
pub use buffer::SbeReader;
pub use decoder::SbeDecoder;
pub use decoder::SbeGroupElement;
pub use decoder::SbeGroupIterator;
pub use decoder::SbeHeader;
pub use decoder::SbeVariableData;
pub use encoder::GroupElementEncoder;
pub use encoder::GroupEncoderBuilder;
pub use encoder::SbeEncoder;
pub use error::SbeError;
pub use error::SbeResult;
pub use message::SbeMessage;
pub use message::SbeMessageDecoder;
pub use message::SbeMessageEncoder;
pub use message::SbeMessageHeader;
pub use message::SbeMessageMetadata;
pub use message::SbeMessageRegistry;

Modules§

buffer
High-performance buffer management for SBE operations
codegen
SBE schema representation and code generation.
decoder
Zero-copy SBE message decoder
encoder
High-performance SBE message encoder
error
Error types for SBE operations
generated
Generated SBE message types from schema
message
Common traits and utilities for SBE messages
prelude
Prelude module for convenient imports

Constants§

SBE_VERSION
SBE specification version supported
VERSION
Library version information