Decodes BSATN binary data into Elixir values.
All functions return {value, rest} tuples where rest is the unconsumed binary,
or {:error, reason} on failure.
Summary
Functions
Decode an array: u32 count + repeated elements using the given decoder function. The decoder function receives binary and returns {:ok, value, rest}.
Decode a boolean (1 byte).
Decode length-prefixed raw bytes.
Decode a 32-bit float, little-endian.
Decode a 64-bit float, little-endian.
Decode a signed 8-bit integer.
Decode a signed 16-bit integer, little-endian.
Decode a signed 32-bit integer, little-endian.
Decode a signed 64-bit integer, little-endian.
Decode a signed 128-bit integer, little-endian.
Decode a signed 256-bit integer, little-endian.
Decode an Option: tag 0 = Some(value), tag 1 = None.
Decode a length-prefixed UTF-8 string. Validates UTF-8 encoding.
Decode a sum type tag (u8).
Decode an unsigned 8-bit integer.
Decode an unsigned 16-bit integer, little-endian.
Decode an unsigned 32-bit integer, little-endian.
Decode an unsigned 64-bit integer, little-endian.
Decode an unsigned 128-bit integer, little-endian.
Decode an unsigned 256-bit integer, little-endian.
Functions
Decode an array: u32 count + repeated elements using the given decoder function. The decoder function receives binary and returns {:ok, value, rest}.
Decode a boolean (1 byte).
Decode length-prefixed raw bytes.
Decode a 32-bit float, little-endian.
Decode a 64-bit float, little-endian.
Decode a signed 8-bit integer.
Decode a signed 16-bit integer, little-endian.
Decode a signed 32-bit integer, little-endian.
Decode a signed 64-bit integer, little-endian.
Decode a signed 128-bit integer, little-endian.
Decode a signed 256-bit integer, little-endian.
Decode an Option: tag 0 = Some(value), tag 1 = None.
Decode a length-prefixed UTF-8 string. Validates UTF-8 encoding.
Decode a sum type tag (u8).
Decode an unsigned 8-bit integer.
Decode an unsigned 16-bit integer, little-endian.
Decode an unsigned 32-bit integer, little-endian.
Decode an unsigned 64-bit integer, little-endian.
Decode an unsigned 128-bit integer, little-endian.
Decode an unsigned 256-bit integer, little-endian.