pub struct TorrentCallbacks {
pub status: Option<StatusCb>,
pub progress: Option<ProgressCb>,
}Expand description
Callbacks for torrent download progress and status updates.
Both callbacks are optional. If not provided, no updates are sent.
§Example
use kget::torrent::TorrentCallbacks;
use std::sync::Arc;
// With callbacks
let callbacks = TorrentCallbacks {
status: Some(Arc::new(|msg| println!("Status: {}", msg))),
progress: Some(Arc::new(|p| println!("Progress: {:.1}%", p * 100.0))),
};
// Without callbacks
let silent = TorrentCallbacks::default();Fields§
§status: Option<StatusCb>Callback for human-readable status messages
progress: Option<ProgressCb>Callback for progress updates (0.0 to 1.0)
Trait Implementations§
Source§impl Clone for TorrentCallbacks
impl Clone for TorrentCallbacks
Source§fn clone(&self) -> TorrentCallbacks
fn clone(&self) -> TorrentCallbacks
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Default for TorrentCallbacks
impl Default for TorrentCallbacks
Source§fn default() -> TorrentCallbacks
fn default() -> TorrentCallbacks
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for TorrentCallbacks
impl !RefUnwindSafe for TorrentCallbacks
impl Send for TorrentCallbacks
impl Sync for TorrentCallbacks
impl Unpin for TorrentCallbacks
impl UnsafeUnpin for TorrentCallbacks
impl !UnwindSafe for TorrentCallbacks
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
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