pub struct AccessProvider {
pub scheme: &'static str,
pub open: fn(target: &str) -> Result<Box<dyn MetricAccess>, QueryError>,
}Expand description
A pluggable access backend, discovered at runtime via inventory.
A consumer opens a service for a scheme-specific target (e.g. a
db path). The sqlite reader registers one; future backends can too,
without the query engine depending on them.
Fields§
§scheme: &'static strThe scheme this provider answers for (e.g. "sqlite").
open: fn(target: &str) -> Result<Box<dyn MetricAccess>, QueryError>Open an access service for target (scheme-specific).
Trait Implementations§
impl Collect for AccessProvider
Auto Trait Implementations§
impl Freeze for AccessProvider
impl RefUnwindSafe for AccessProvider
impl Send for AccessProvider
impl Sync for AccessProvider
impl Unpin for AccessProvider
impl UnsafeUnpin for AccessProvider
impl UnwindSafe for AccessProvider
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more