Open Fishrock123 opened 3 years ago
Most header names (and many header values) will be short; we might want to use something like kstring
here, with a small-string optimization. kstring also supports Cow.
Most header names (and many header values) will be short; we might want to use something like
kstring
here, with a small-string optimization. kstring also supports Cow.
trillium's header name implementation does something like this, using smartcow which is just a cow for smartstring. However it might also make sense to use some sort of string interning library because there are only a handful of header names used in reality and they're repeated across requests
This allows HeaderValue to borrow
'static
strings, rather than make allocations.Unfortunately, we can't specialize
TryFrom
orFrom
, so this also adds a new crate-onlyfrom_static_str() -> HeaderValue
.