Trait endr::StorageBackend

source ·
pub trait StorageBackend {
    // Required methods
    fn get_key<'a>(
        &self,
        key: &str
    ) -> Pin<Box<dyn Future<Output = Option<Vec<u8>>> + 'a>>;
    fn set_key<'a>(
        &self,
        key: &str,
        value: Vec<u8>
    ) -> Pin<Box<dyn Future<Output = ()> + 'a>>;
    fn get_stream<'a>(
        &self,
        key: &str
    ) -> Pin<Box<dyn Stream<Item = Vec<u8>> + 'a>>;
    fn append_to_stream<'a>(
        &self,
        key: &str,
        value: Vec<u8>,
        expected_offset: Option<usize>
    ) -> Pin<Box<dyn Future<Output = ()> + 'a>>;
    fn clone_ref(&self) -> Box<dyn StorageBackend>;
}

Required Methods§

source

fn get_key<'a>( &self, key: &str ) -> Pin<Box<dyn Future<Output = Option<Vec<u8>>> + 'a>>

source

fn set_key<'a>( &self, key: &str, value: Vec<u8> ) -> Pin<Box<dyn Future<Output = ()> + 'a>>

source

fn get_stream<'a>(&self, key: &str) -> Pin<Box<dyn Stream<Item = Vec<u8>> + 'a>>

source

fn append_to_stream<'a>( &self, key: &str, value: Vec<u8>, expected_offset: Option<usize> ) -> Pin<Box<dyn Future<Output = ()> + 'a>>

source

fn clone_ref(&self) -> Box<dyn StorageBackend>

Trait Implementations§

source§

impl StorageBackend for Box<dyn StorageBackend>

source§

fn get_key<'a>( &self, key: &str ) -> Pin<Box<dyn Future<Output = Option<Vec<u8>>> + 'a>>

source§

fn set_key<'a>( &self, key: &str, value: Vec<u8> ) -> Pin<Box<dyn Future<Output = ()> + 'a>>

source§

fn get_stream<'a>(&self, key: &str) -> Pin<Box<dyn Stream<Item = Vec<u8>> + 'a>>

source§

fn append_to_stream<'a>( &self, key: &str, value: Vec<u8>, expected_offset: Option<usize> ) -> Pin<Box<dyn Future<Output = ()> + 'a>>

source§

fn clone_ref(&self) -> Box<dyn StorageBackend>

Implementations on Foreign Types§

source§

impl StorageBackend for Box<dyn StorageBackend>

source§

fn get_key<'a>( &self, key: &str ) -> Pin<Box<dyn Future<Output = Option<Vec<u8>>> + 'a>>

source§

fn set_key<'a>( &self, key: &str, value: Vec<u8> ) -> Pin<Box<dyn Future<Output = ()> + 'a>>

source§

fn get_stream<'a>(&self, key: &str) -> Pin<Box<dyn Stream<Item = Vec<u8>> + 'a>>

source§

fn append_to_stream<'a>( &self, key: &str, value: Vec<u8>, expected_offset: Option<usize> ) -> Pin<Box<dyn Future<Output = ()> + 'a>>

source§

fn clone_ref(&self) -> Box<dyn StorageBackend>

Implementors§