pub trait KeyEncoding<K = Self>: Send + Sync {
    type Error: AnyError;

    const LENGTH: Option<usize>;

    // Required methods
    fn describe<Visitor>(visitor: &mut Visitor)
       where Visitor: KeyVisitor;
    fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, Self::Error>;
}
Expand description

A trait that enables a type to convert itself into a memcmp-compatible sequence of bytes.

Required Associated Types§

source

type Error: AnyError

The error type that can be produced by either serialization or deserialization.

Required Associated Constants§

source

const LENGTH: Option<usize>

The size of the key, if constant. If this type doesn’t produce the same number of bytes for each value, this should be None.

Required Methods§

source

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

Describes this type by invoking functions on visitor describing the key being encoded.

See the KeyVisitor trait for more information.

KeyDescription::for_key()/KeyDescription::for_encoding() are built-in functions

source

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, Self::Error>

Convert self into a Cow<'_, [u8]> containing bytes that are able to be compared via memcmp in a way that is comptaible with its own Ord implementation.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl KeyEncoding for bool

§

type Error = Infallible

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <bool as KeyEncoding>::Error>

source§

impl KeyEncoding for i8

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <i8 as KeyEncoding>::Error>

source§

impl KeyEncoding for i16

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <i16 as KeyEncoding>::Error>

source§

impl KeyEncoding for i32

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <i32 as KeyEncoding>::Error>

source§

impl KeyEncoding for i64

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <i64 as KeyEncoding>::Error>

source§

impl KeyEncoding for i128

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <i128 as KeyEncoding>::Error>

source§

impl KeyEncoding for isize

§

type Error = Error

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <isize as KeyEncoding>::Error>

source§

impl KeyEncoding for u8

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <u8 as KeyEncoding>::Error>

source§

impl KeyEncoding for u16

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <u16 as KeyEncoding>::Error>

source§

impl KeyEncoding for u32

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <u32 as KeyEncoding>::Error>

source§

impl KeyEncoding for u64

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <u64 as KeyEncoding>::Error>

source§

impl KeyEncoding for u128

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <u128 as KeyEncoding>::Error>

source§

impl KeyEncoding for ()

§

type Error = Infallible

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <() as KeyEncoding>::Error>

source§

impl KeyEncoding for usize

§

type Error = Error

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <usize as KeyEncoding>::Error>

source§

impl KeyEncoding for String

§

type Error = FromUtf8Error

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <String as KeyEncoding>::Error>

source§

impl KeyEncoding for Vec<u8>

§

type Error = Infallible

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <Vec<u8> as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroI8

§

type Error = NonZeroKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroI8 as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroI16

§

type Error = NonZeroKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroI16 as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroI32

§

type Error = NonZeroKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroI32 as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroI64

§

type Error = NonZeroKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroI64 as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroI128

§

type Error = NonZeroKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroI128 as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroIsize

§

type Error = Error

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroIsize as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroU8

§

type Error = NonZeroKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroU8 as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroU16

§

type Error = NonZeroKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroU16 as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroU32

§

type Error = NonZeroKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroU32 as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroU64

§

type Error = NonZeroKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroU64 as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroU128

§

type Error = NonZeroKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroU128 as KeyEncoding>::Error>

source§

impl KeyEncoding for NonZeroUsize

§

type Error = Error

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <NonZeroUsize as KeyEncoding>::Error>

source§

impl KeyEncoding for Duration

§

type Error = TimeError

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <Duration as KeyEncoding>::Error>

source§

impl KeyEncoding for SystemTime

§

type Error = TimeError

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <SystemTime as KeyEncoding>::Error>

source§

impl KeyEncoding for Uuid

§

type Error = TryFromSliceError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <Uuid as KeyEncoding>::Error>

source§

impl KeyEncoding<String> for str

§

type Error = FromUtf8Error

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <str as KeyEncoding<String>>::Error>

source§

impl<'a, 'k, K, KE> KeyEncoding<K> for &'a KE
where KE: KeyEncoding<K> + PartialEq + ?Sized, K: Key<'k> + PartialEq<KE>,

§

type Error = <KE as KeyEncoding<K>>::Error

source§

const LENGTH: Option<usize> = K::LENGTH

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <&'a KE as KeyEncoding<K>>::Error>

source§

impl<'k> KeyEncoding for Cow<'k, str>

§

type Error = Utf8Error

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <Cow<'k, str> as KeyEncoding>::Error>

source§

impl<'k> KeyEncoding<Cow<'k, [u8]>> for &'k [u8]

§

type Error = Infallible

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <&'k [u8] as KeyEncoding<Cow<'k, [u8]>>>::Error>

source§

impl<'k> KeyEncoding<Bytes> for &'k [u8]

§

type Error = Infallible

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <&'k [u8] as KeyEncoding<Bytes>>::Error>

source§

impl<'k> KeyEncoding<CowBytes<'k>> for &'k [u8]

§

type Error = Infallible

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <&'k [u8] as KeyEncoding<CowBytes<'k>>>::Error>

source§

impl<'k> KeyEncoding<ArcBytes<'k>> for &'k [u8]

§

type Error = Infallible

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <&'k [u8] as KeyEncoding<ArcBytes<'k>>>::Error>

source§

impl<'k> KeyEncoding<Vec<u8>> for &'k [u8]

§

type Error = Infallible

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <&'k [u8] as KeyEncoding<Vec<u8>>>::Error>

source§

impl<'k, 'ke> KeyEncoding<Cow<'ke, [u8]>> for Cow<'k, [u8]>

§

type Error = Infallible

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <Cow<'k, [u8]> as KeyEncoding<Cow<'ke, [u8]>>>::Error>

source§

impl<'k, T, E, TBorrowed, EBorrowed> KeyEncoding<Result<T, E>> for Result<TBorrowed, EBorrowed>
where TBorrowed: KeyEncoding<T>, T: Key<'k, Error = <TBorrowed as KeyEncoding<T>>::Error>, EBorrowed: KeyEncoding<E, Error = <TBorrowed as KeyEncoding<T>>::Error>, E: Key<'k, Error = <TBorrowed as KeyEncoding<T>>::Error>,

§

type Error = <TBorrowed as KeyEncoding<T>>::Error

source§

const LENGTH: Option<usize> = None

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <Result<TBorrowed, EBorrowed> as KeyEncoding<Result<T, E>>>::Error>

source§

impl<'k, T, K> KeyEncoding<Option<K>> for Option<T>
where T: KeyEncoding<K>, K: Key<'k>,

§

type Error = <T as KeyEncoding<K>>::Error

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <Option<T> as KeyEncoding<Option<K>>>::Error>

source§

impl<T1> KeyEncoding for (T1,)
where T1: for<'k> Key<'k>,

§

type Error = CompositeKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <(T1,) as KeyEncoding>::Error>

source§

impl<T1, T2> KeyEncoding for (T1, T2)
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>,

§

type Error = CompositeKeyError

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <(T1, T2) as KeyEncoding>::Error>

source§

impl<T1, T2, T3> KeyEncoding for (T1, T2, T3)
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>,

source§

impl<T1, T2, T3, T4> KeyEncoding for (T1, T2, T3, T4)
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>, T4: for<'k> Key<'k>,

source§

impl<T1, T2, T3, T4, T5> KeyEncoding for (T1, T2, T3, T4, T5)
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>, T4: for<'k> Key<'k>, T5: for<'k> Key<'k>,

source§

impl<T1, T2, T3, T4, T5, T6> KeyEncoding for (T1, T2, T3, T4, T5, T6)
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>, T4: for<'k> Key<'k>, T5: for<'k> Key<'k>, T6: for<'k> Key<'k>,

source§

impl<T1, T2, T3, T4, T5, T6, T7> KeyEncoding for (T1, T2, T3, T4, T5, T6, T7)
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>, T4: for<'k> Key<'k>, T5: for<'k> Key<'k>, T6: for<'k> Key<'k>, T7: for<'k> Key<'k>,

source§

impl<T1, T2, T3, T4, T5, T6, T7, T8> KeyEncoding for (T1, T2, T3, T4, T5, T6, T7, T8)
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>, T4: for<'k> Key<'k>, T5: for<'k> Key<'k>, T6: for<'k> Key<'k>, T7: for<'k> Key<'k>, T8: for<'k> Key<'k>,

source§

impl<const N: usize> KeyEncoding for [u8; N]

§

type Error = IncorrectByteLength

source§

const LENGTH: Option<usize> = _

source§

fn describe<Visitor>(visitor: &mut Visitor)
where Visitor: KeyVisitor,

source§

fn as_ord_bytes(&self) -> Result<Cow<'_, [u8]>, <[u8; N] as KeyEncoding>::Error>

Implementors§

source§

impl KeyEncoding for Bytes

source§

impl KeyEncoding for SensitiveBytes

source§

impl KeyEncoding for SensitiveString

source§

impl KeyEncoding for Timestamp

source§

impl KeyEncoding for Signed

§

type Error = Error

source§

const LENGTH: Option<usize> = None

source§

impl KeyEncoding for Unsigned

§

type Error = Error

source§

const LENGTH: Option<usize> = None

source§

impl<'a, 'k, TOwned, TBorrowed> KeyEncoding for MaybeOwned<'a, TOwned, TBorrowed>
where TBorrowed: KeyEncoding<TOwned, Error = <TOwned as KeyEncoding>::Error> + PartialEq + ?Sized, TOwned: Key<'k> + PartialEq<TBorrowed>,

§

type Error = <TOwned as KeyEncoding>::Error

source§

const LENGTH: Option<usize> = TBorrowed::LENGTH

source§

impl<'k> KeyEncoding for CowBytes<'k>

source§

impl<'k> KeyEncoding for ArcBytes<'k>

source§

impl<K, T> KeyEncoding<OptionKeyV1<K>> for OptionKeyV1<T>
where T: KeyEncoding<K>, K: for<'k> Key<'k>,

§

type Error = <T as KeyEncoding<K>>::Error

source§

const LENGTH: Option<usize> = T::LENGTH

source§

impl<PrimaryKey> KeyEncoding<PrimaryKey> for DocumentId
where PrimaryKey: for<'pk> Key<'pk>,

§

type Error = Error

source§

const LENGTH: Option<usize> = None

source§

impl<Resolution> KeyEncoding for LimitedResolutionDuration<Resolution>
where Resolution: TimeResolution,

source§

impl<Resolution, Epoch> KeyEncoding for LimitedResolutionTimestamp<Resolution, Epoch>
where Resolution: TimeResolution, Epoch: TimeEpoch,

source§

impl<T1> KeyEncoding for TupleEncodingV1<(T1,)>
where T1: for<'k> Key<'k>,

source§

impl<T1, T2> KeyEncoding for TupleEncodingV1<(T1, T2)>
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>,

source§

impl<T1, T2, T3> KeyEncoding for TupleEncodingV1<(T1, T2, T3)>
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>,

source§

impl<T1, T2, T3, T4> KeyEncoding for TupleEncodingV1<(T1, T2, T3, T4)>
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>, T4: for<'k> Key<'k>,

source§

impl<T1, T2, T3, T4, T5> KeyEncoding for TupleEncodingV1<(T1, T2, T3, T4, T5)>
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>, T4: for<'k> Key<'k>, T5: for<'k> Key<'k>,

source§

impl<T1, T2, T3, T4, T5, T6> KeyEncoding for TupleEncodingV1<(T1, T2, T3, T4, T5, T6)>
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>, T4: for<'k> Key<'k>, T5: for<'k> Key<'k>, T6: for<'k> Key<'k>,

source§

impl<T1, T2, T3, T4, T5, T6, T7> KeyEncoding for TupleEncodingV1<(T1, T2, T3, T4, T5, T6, T7)>
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>, T4: for<'k> Key<'k>, T5: for<'k> Key<'k>, T6: for<'k> Key<'k>, T7: for<'k> Key<'k>,

source§

impl<T1, T2, T3, T4, T5, T6, T7, T8> KeyEncoding for TupleEncodingV1<(T1, T2, T3, T4, T5, T6, T7, T8)>
where T1: for<'k> Key<'k>, T2: for<'k> Key<'k>, T3: for<'k> Key<'k>, T4: for<'k> Key<'k>, T5: for<'k> Key<'k>, T6: for<'k> Key<'k>, T7: for<'k> Key<'k>, T8: for<'k> Key<'k>,

source§

impl<T> KeyEncoding for EnumKey<T>

§

type Error = Error

source§

const LENGTH: Option<usize> = None

source§

impl<T> KeyEncoding for VarInt<T>
where T: VariableInteger,

§

type Error = Error

source§

const LENGTH: Option<usize> = None