pub struct BackendRegistry { /* private fields */ }Expand description
Backend registry for managing multiple backends
Implementations§
Source§impl BackendRegistry
impl BackendRegistry
Sourcepub fn register(&mut self, name: String, backend: Box<dyn VectorBackend>)
pub fn register(&mut self, name: String, backend: Box<dyn VectorBackend>)
Register a backend with a name
Sourcepub fn get(&self, name: &str) -> Option<&dyn VectorBackend>
pub fn get(&self, name: &str) -> Option<&dyn VectorBackend>
Get a backend by name
Sourcepub fn get_mut(&mut self, name: &str) -> Option<&mut (dyn VectorBackend + '_)>
pub fn get_mut(&mut self, name: &str) -> Option<&mut (dyn VectorBackend + '_)>
Get a mutable backend by name
Sourcepub fn get_default(&self) -> Option<&dyn VectorBackend>
pub fn get_default(&self) -> Option<&dyn VectorBackend>
Get the default backend
Sourcepub fn get_default_mut(&mut self) -> Option<&mut (dyn VectorBackend + '_)>
pub fn get_default_mut(&mut self) -> Option<&mut (dyn VectorBackend + '_)>
Get the default backend mutably
Sourcepub fn set_default(&mut self, name: String) -> Result<()>
pub fn set_default(&mut self, name: String) -> Result<()>
Set the default backend
Sourcepub fn list_backends(&self) -> Vec<String>
pub fn list_backends(&self) -> Vec<String>
List all registered backend names
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BackendRegistry
impl !RefUnwindSafe for BackendRegistry
impl Send for BackendRegistry
impl Sync for BackendRegistry
impl Unpin for BackendRegistry
impl !UnwindSafe for BackendRegistry
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.