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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::Error>

source§

impl KeyEncoding for usize

§

type Error = Error

source§

const LENGTH: Option<Self> = None

source§

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

source§

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

source§

impl KeyEncoding for Bytes

§

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]>, Self::Error>

source§

impl KeyEncoding for Signed

§

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]>, Self::Error>

source§

impl KeyEncoding for Unsigned

§

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]>, Self::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]>, Self::Error>

source§

impl<'a, 'k, K, KE> KeyEncoding<K> for &'a KEwhere KE: KeyEncoding<K> + ?Sized + PartialEq, 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]>, Self::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]>, Self::Error>

source§

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

§

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]>, Self::Error>

source§

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

§

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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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::Error>, EBorrowed: KeyEncoding<E, Error = TBorrowed::Error>, E: Key<'k, Error = TBorrowed::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]>, Self::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]>, Self::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]>, Self::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]>, Self::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>,

§

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]>, Self::Error>

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>,

§

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]>, Self::Error>

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>,

§

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]>, Self::Error>

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>,

§

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]>, Self::Error>

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>,

§

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]>, Self::Error>

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>,

§

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]>, Self::Error>

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]>, Self::Error>

Implementors§

source§

impl KeyEncoding for SensitiveBytes

source§

impl KeyEncoding for SensitiveString

source§

impl KeyEncoding for Timestamp

source§

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

§

type Error = <TOwned as KeyEncoding>::Error

source§

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

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 DocumentIdwhere 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>where T: ToPrimitive + FromPrimitive + Clone + Eq + Ord + Debug + Send + Sync,

§

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