pdk-serde-fixint 1.9.2

PDK serde codec, byte-compatible with the bincode 1.3 default format
Documentation
// Copyright (c) 2026, Salesforce, Inc.,
// All rights reserved.
// For full license text, see the LICENSE.txt file

//! A minimal, self-owned serde codec implementing a fixed-width, little-endian
//! binary format.
//!
//! # Why "fixint"
//!
//! The name is short for *fixed-width integers*, the defining property of this
//! wire format: every integer is written at its full width — a `u64` is always
//! 8 bytes, a `u32` always 4 — with no compression. Collection lengths are
//! `u64` prefixes and enum variants are `u32` tags, all little-endian. This is
//! deliberately distinct from a *variable-length* (varint) encoding, where
//! small integers pack into fewer bytes and the same value produces different
//! bytes.
//!
//! The distinction matters for compatibility: this codec is byte-for-byte
//! identical to the legacy serialization crate the PDK used to depend on, whose
//! default configuration was also fixed-width little-endian. Matching the
//! fixed-width layout is exactly what lets us read data previously written by
//! it. A varint codec would not.
//!
//! It exists so the PDK can drop its runtime dependency on that end-of-life
//! crate while remaining wire-compatible with already-persisted data. The
//! legacy crate is used only as a dev-dependency to prove byte-for-byte
//! interoperability (see `tests/interop.rs`).

mod de;
mod error;
mod ser;
mod size;

pub use de::{from_slice, Deserializer};
pub use error::{Error, Result};
pub use ser::{to_vec, Serializer};