pub struct ProviderRegistry { /* private fields */ }Expand description
The compile-time provider registry. ProviderRegistry::with_builtin
carries the four OAuth providers; composition may add adapters, never
remove the validation contract.
Implementations§
Source§impl ProviderRegistry
impl ProviderRegistry
pub fn new() -> Self
Sourcepub fn with_builtin() -> Self
pub fn with_builtin() -> Self
The four built-in providers (gmail / outlook / google_calendar / microsoft_calendar).
Sourcepub fn register(&mut self, adapter: ProviderAdapter)
pub fn register(&mut self, adapter: ProviderAdapter)
Register an additional adapter (composition extension point).
Sourcepub fn lookup(&self, provider: &str) -> Option<&ProviderAdapter>
pub fn lookup(&self, provider: &str) -> Option<&ProviderAdapter>
Look up one provider’s adapter data.
Trait Implementations§
Source§impl Clone for ProviderRegistry
impl Clone for ProviderRegistry
Source§impl Debug for ProviderRegistry
impl Debug for ProviderRegistry
Auto Trait Implementations§
impl Freeze for ProviderRegistry
impl RefUnwindSafe for ProviderRegistry
impl Send for ProviderRegistry
impl Sync for ProviderRegistry
impl Unpin for ProviderRegistry
impl UnsafeUnpin for ProviderRegistry
impl UnwindSafe for ProviderRegistry
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 more