Skip to main content

Callback

Struct Callback 

Source
pub struct Callback<'a> {
    pub on_progress: OnProgressType<'a>,
    pub on_complete: OnCompleteType<'a>,
    /* private fields */
}
Expand description

Methods and streams to process either on_progress or on_complete

Fields§

§on_progress: OnProgressType<'a>§on_complete: OnCompleteType<'a>

Implementations§

Source§

impl<'a> Callback<'a>

Source

pub fn new() -> Self

Create a new callback struct without actual callbacks

Source

pub fn connect_on_progress_closure( self, closure: impl FnMut(CallbackArguments) + Send + 'a, ) -> Self

Attach a closure to be executed on progress

§Warning:

This closure gets executed quite often, once every ~10kB progress. If it’s too slow, some on_progress events will be dropped. If you are looking fore something that will be executed more seldom, look for Callback::connect_on_progress_closure_slow

Source

pub fn connect_on_progress_closure_slow( self, closure: impl FnMut(CallbackArguments) + Send + 'a, ) -> Self

Attach a closure to be executed on progress. This closure will be executed more seldom, around once for every MB downloaded.

Source

pub fn connect_on_progress_closure_async<Fut: Future<Output = ()> + Send + 'a, F: Fn(CallbackArguments) -> Fut + Send + Sync + 'a>( self, closure: F, ) -> Self

Attach a async closure to be executed on progress

§Warning:

This closure gets executed quite often, once every ~10kB progress. If it’s too slow, some on_progress events will be dropped. If you are looking fore something that will be executed more seldom, look for Callback::connect_on_progress_closure_async_slow

Source

pub fn connect_on_progress_closure_async_slow<Fut: Future<Output = ()> + Send + 'a, F: Fn(CallbackArguments) -> Fut + Send + Sync + 'a>( self, closure: F, ) -> Self

Attach a async closure to be executed on progress. This closure will be executed more seldom, around once for every MB downloaded.

Source

pub fn connect_on_progress_sender( self, sender: Sender<CallbackArguments>, cancel_on_close: bool, ) -> Self

Attach a bounded sender that receives messages on progress cancel_or_close indicates whether or not to cancel the download, if the receiver is closed

§Warning:

This sender gets messages quite often, once every ~10kB progress. If it’s too slow, some on_progress events will be dropped.

Source

pub fn connect_on_progress_sender_slow( self, sender: Sender<CallbackArguments>, cancel_on_close: bool, ) -> Self

Attach a bounded sender that receives messages on progress cancel_or_close indicates whether or not to cancel the download, if the receiver is closed

This closure will be executed more seldom, around once for every MB downloaded.

Source

pub fn connect_on_complete_closure( self, closure: impl FnMut(Option<PathBuf>) + Send + 'a, ) -> Self

Attach a closure to be executed on complete

Source

pub fn connect_on_complete_closure_async<Fut: Future<Output = ()> + Send + 'a, F: Fn(Option<PathBuf>) -> Fut + Send + Sync + 'a>( self, closure: F, ) -> Self

Attach a async closure to be executed on complete

Trait Implementations§

Source§

impl<'a> Debug for Callback<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'a> Default for Callback<'a>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for Callback<'a>

§

impl<'a> !RefUnwindSafe for Callback<'a>

§

impl<'a> Send for Callback<'a>

§

impl<'a> !Sync for Callback<'a>

§

impl<'a> Unpin for Callback<'a>

§

impl<'a> UnsafeUnpin for Callback<'a>

§

impl<'a> !UnwindSafe for Callback<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more