Expand description
tinyvec based string types.
tinyvec_string provides two string types:
ArrayString, a string backed by a fixed-size array on the stack, usingArrayVecTinyString, a string backed by either a fixed-size array on the stack or aVecon the heap
§Features
Like tinyvec, tinyvec_string is no_std by default.
ArrayString has no dependencies (other than tinyvec and core).
TinyString requires the the alloc cargo feature to be enabled because
it has a dependency on alloc:
[dependencies]
tinyvec_string = { version = "0.3.2", features = ["alloc"] }Error types implement std::error::Error when the std feature is
enabled.
The rustc_1_40 feature enables tinyvec’s rustc_1_40 feature, which enables
some optimizations for Rust versions >= 1.40.
The rustc_1_55 feature enables usage of const generics to allow usage of
backing arrays of any size.
The rustc_1_57 feature enables TinyString::try_reserve and
TinyString::try_reserve_exact.
§Safety
This crate strives to be as safe as possible. Almost all internal unsafe
code is copied verbatim from std’s String implementation for maximum
reliability and performance.
§MSRV
Like tinyvec, tinyvec_string (without rustc version features) supports
Rust 1.34+. The alloc feature requires Rust 1.36+.
Re-exports§
pub use arraystring::ArrayString;pub use tinystring::TinyString;alloc
Modules§
- arraystring
ArrayVecbacked strings- bytearray
- Trait for byte arrays.
- tinystring
alloc - Inline/Heap strings.
- tinyvec
- Re-exports from
tinyvec.