Struct bonsaidb::core::key::CompositeKeyFieldContainsNullByte
pub struct CompositeKeyFieldContainsNullByte;
Expand description
Null bytes in variable fields encoded with CompositeKeyEncoder
can cause
sort order to misbehave.
Consider these tuples:
Tuple | Encoded |
---|---|
("a", "b") | 9700 9800 0101 |
("a\0", "a") | 9700 9700 0101 |
The encoded bytes, when compared, will produce a different sort result than when comparing the tuples.
By default, CompositeKeyEncoder
checks for null bytes and returns an
error when a null byte is found. See
CompositeKeyEncoder::allowing_null_bytes()
if you wish
to allow null bytes despite this edge case.
Trait Implementations§
§impl Debug for CompositeKeyFieldContainsNullByte
impl Debug for CompositeKeyFieldContainsNullByte
§impl Error for CompositeKeyFieldContainsNullByte
impl Error for CompositeKeyFieldContainsNullByte
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Auto Trait Implementations§
impl RefUnwindSafe for CompositeKeyFieldContainsNullByte
impl Send for CompositeKeyFieldContainsNullByte
impl Sync for CompositeKeyFieldContainsNullByte
impl Unpin for CompositeKeyFieldContainsNullByte
impl UnwindSafe for CompositeKeyFieldContainsNullByte
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere T: 'a,
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more