Trait vart::Key

source ·
pub trait Key {
    // Required methods
    fn at(&self, pos: usize) -> u8;
    fn len(&self) -> usize;
    fn prefix_before(&self, length: usize) -> Self;
    fn prefix_after(&self, start: usize) -> Self;
    fn longest_common_prefix(&self, slice: &[u8]) -> usize;
    fn as_slice(&self) -> &[u8] ;

    // Provided method
    fn is_empty(&self) -> bool { ... }
}

Required Methods§

source

fn at(&self, pos: usize) -> u8

source

fn len(&self) -> usize

source

fn prefix_before(&self, length: usize) -> Self

source

fn prefix_after(&self, start: usize) -> Self

source

fn longest_common_prefix(&self, slice: &[u8]) -> usize

source

fn as_slice(&self) -> &[u8]

Provided Methods§

source

fn is_empty(&self) -> bool

Object Safety§

This trait is not object safe.

Implementors§

source§

impl Key for VariableSizeKey

source§

impl<const SIZE: usize> Key for FixedSizeKey<SIZE>