osrm-backend/rust/flexbuffers
Siarhei Fedartsou 0f6aab9da6 Squashed 'third_party/flatbuffers/' content from commit 595bf0007
git-subtree-dir: third_party/flatbuffers
git-subtree-split: 595bf0007ab1929570c7671f091313c8fc20644e
2024-06-22 13:33:34 +02:00
..
src Squashed 'third_party/flatbuffers/' content from commit 595bf0007 2024-06-22 13:33:34 +02:00
.gitignore Squashed 'third_party/flatbuffers/' content from commit 595bf0007 2024-06-22 13:33:34 +02:00
Cargo.toml Squashed 'third_party/flatbuffers/' content from commit 595bf0007 2024-06-22 13:33:34 +02:00
README.md Squashed 'third_party/flatbuffers/' content from commit 595bf0007 2024-06-22 13:33:34 +02:00

Flexbuffers

Flexbuffers is a schema-less binary format developed at Google. FlexBuffers can be accessed without parsing, copying, or allocation. This is a huge win for efficiency, memory friendly-ness, and allows for unique use cases such as mmap-ing large amounts of free-form data.

FlexBuffers' design and implementation allows for a very compact encoding, with automatic sizing of containers to their smallest possible representation (8/16/32/64 bits). Many values and offsets can be encoded in just 8 bits.

FlexBuffers supports Serde for automatically serializing Rust data structures into its binary format.

See Examples for Usage:

Flexbuffers is the schema-less cousin of Flatbuffers.