omp-core 0.1.0

Core data structures, compact strings and bytes, sparse collections, and binary-to-text encodings for omp
Documentation

omp-core

omp-core provides shared, low-level data structures and encoding utilities used by omp. Its public API includes append-only storage, compact string and byte types, sparse collections, and binary-to-text encodings.

Structure

  • append_vec implements the thread-safe, segmented AppendVec and its borrowed AppendSlice views.
  • cow_bytes provides CowBytes, a borrowed-or-Bytes byte container with cheap owned clones and zero-copy slicing.
  • encoding contains generic base-N machinery and the public hex, Base32, Base32-Hex, Base32-DNS, Base64, and URL-safe Base64 interfaces.
  • str provides immutable and mutable small-string types, clone-on-write strings, formatting helpers, and conversions.
  • sparse_index, sparse_map, and sparse_set implement the indexing machinery and public sparse map and set collections.

The crate root re-exports the principal collection, string, byte, and encoding types so callers usually do not need to depend on module layout.

Philosophy

The implementations favor predictable, allocation-conscious primitives for frequently used infrastructure. Short strings stay inline, owned bytes remain cheaply shareable, append-only storage grows in segmented buckets, and encoding supports fixed-size and streaming forms. Specialized representations are kept behind conventional collection, iterator, conversion, and Serde interfaces so callers can use these optimizations without carrying their internal bookkeeping.