Considerations:
Ramifications:
&'static str
across strings (KString
), references (KStringRef
), and lifetime abstractions (KStringCow
) to avoid allocating for struct field names.Box<str>
rather than String
to use less memory.Features
max_inline
: Instead of aligning the inline-string for performance (15 bytes + length on 64-bit), use the full width (22 bytes on 64-bit)arc
: Instead of using Box<str>
, use Arc<str>
. Note: allocations are fast enough that this can actually slow things down for small enough strings.Alternatives
smol_str
Arc
instead of Box
smartstring
String
compact_str
Arc
instead of Box
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.