Skip to main content

Provider

Trait Provider 

Source
pub trait Provider:
    Debug
    + Send
    + Sync {
    // Required method
    fn get<'life0, 'life1, 'async_trait>(
        &'life0 self,
        key: &'life1 Key<'_>,
    ) -> Pin<Box<dyn Future<Output = Result<Option<String>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;

    // Provided method
    fn may_resolve(&self, key: &Key<'_>) -> bool { ... }
}
Expand description

A config provider.

Required Methods§

Source

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

Returns the value at the given config path, if it exists.

Provided Methods§

Source

fn may_resolve(&self, key: &Key<'_>) -> bool

Returns true if the given key might be resolvable by this Provider.

Dynamic resolvers will typically return true unconditionally, which is the default implementation.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§