pub struct ProviderComponents {
pub provider: Box<dyn Provider>,
pub model_policy: Arc<dyn ProviderModelPolicy>,
pub failure_classifier: Arc<dyn ProviderFailureClassifier>,
pub rate_limiter: Arc<ProviderRateLimiter>,
}Expand description
Component bundle returned by provider factories.
Fields§
§provider: Box<dyn Provider>§model_policy: Arc<dyn ProviderModelPolicy>§failure_classifier: Arc<dyn ProviderFailureClassifier>§rate_limiter: Arc<ProviderRateLimiter>Implementations§
Source§impl ProviderComponents
impl ProviderComponents
pub fn new( provider: Box<dyn Provider>, model_policy: Arc<dyn ProviderModelPolicy>, ) -> Self
Sourcepub fn map_provider(
self,
map: impl FnOnce(Box<dyn Provider>) -> Box<dyn Provider>,
) -> Self
pub fn map_provider( self, map: impl FnOnce(Box<dyn Provider>) -> Box<dyn Provider>, ) -> Self
Install a transport-level decorator that wraps the provider.
pub fn with_failure_classifier( self, classifier: Arc<dyn ProviderFailureClassifier>, ) -> Self
Trait Implementations§
Source§impl Clone for ProviderComponents
impl Clone for ProviderComponents
Auto Trait Implementations§
impl !RefUnwindSafe for ProviderComponents
impl !UnwindSafe for ProviderComponents
impl Freeze for ProviderComponents
impl Send for ProviderComponents
impl Sync for ProviderComponents
impl Unpin for ProviderComponents
impl UnsafeUnpin for ProviderComponents
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