pub trait Pusher<'b, M, R>{
const TOKEN_LIMIT: usize = 500usize;
// Required method
fn push<'life0, 'async_trait>(
&'life0 self,
msg: &'b M,
) -> Pin<Box<dyn Future<Output = Result<R, Error>> + Send + 'async_trait>>
where Self: 'async_trait,
'b: 'async_trait,
'life0: 'async_trait;
// Provided methods
fn retry_push<'life0, 'async_trait>(
&'life0 self,
msg: &'b M,
) -> Pin<Box<dyn Future<Output = Result<R, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'b: 'async_trait,
'life0: 'async_trait { ... }
fn retry_batch_push<'life0, 'async_trait>(
&'life0 self,
msgs: &'b [M],
) -> Pin<Box<dyn Future<Output = Result<Vec<R>, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'b: 'async_trait,
'life0: 'async_trait { ... }
}Provided Associated Constants§
const TOKEN_LIMIT: usize = 500usize
Required Methods§
fn push<'life0, 'async_trait>(
&'life0 self,
msg: &'b M,
) -> Pin<Box<dyn Future<Output = Result<R, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'b: 'async_trait,
'life0: 'async_trait,
Provided Methods§
fn retry_push<'life0, 'async_trait>(
&'life0 self,
msg: &'b M,
) -> Pin<Box<dyn Future<Output = Result<R, Error>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'b: 'async_trait,
'life0: 'async_trait,
fn retry_batch_push<'life0, 'async_trait>(
&'life0 self,
msgs: &'b [M],
) -> Pin<Box<dyn Future<Output = Result<Vec<R>, Error>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'b: 'async_trait,
'life0: 'async_trait,
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.