Loader

Trait Loader 

Source
pub trait Loader {
    // Required method
    fn load<'life0, 'life1, 'async_trait>(
        &'life0 self,
        key: &'life1 str,
    ) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
}
Expand description

A type implementing the Loader trait can be used to load a value from a store by it’s key

For example, the type could load a value from and environment variable, or an external key value store like etcd.

As the value could be loaded from an external network source, it must be done asynchronously to allow non-blocking value loading

Required Methods§

Source

fn load<'life0, 'life1, 'async_trait>( &'life0 self, key: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Load takes a key and loads a value from the source using the key. As this could be over a network, we do this asynchronously

Implementors§