Skip to main content

Crate naia_serde_derive

Crate naia_serde_derive 

Source
Expand description

naia-serde-derive — derives Serde implementations for structs, tuple structs, and enums.

§Bit-budget invariant (load-bearing)

For every T: Serde, T.bit_length() returns exactly the number of bits T.ser() writes against any BitWrite. The derive emits both methods from the same field/variant traversal so they can never drift, and the naia_serde::tests::bit_budget proptest harness pins this contract for every derive shape (named struct, tuple struct, unit/payload enum) and for the SerdeInteger family.

Phase 9.2 history: a 5-year-old off-by-one in derived-enum bits_needed_for(N) shipped through every prior phase before being caught in Phase 8.3. The proptest harness exists to keep that class of bug from reappearing.

Derive Macros§

Serde
SerdeBevyClient
SerdeBevyServer
SerdeBevyShared
SerdeInternal