implement Debug for Task

This commit is contained in:
Craig Watson 2025-05-23 12:16:29 -07:00
parent 7c5a4bc465
commit 15230cbee3

View file

@ -17,7 +17,6 @@ pub use sipper::{Never, Sender, Sipper, Straw, sipper, stream};
/// A set of concurrent actions to be performed by the iced runtime.
///
/// A [`Task`] _may_ produce a bunch of values of type `T`.
#[allow(missing_debug_implementations)]
#[must_use = "`Task` must be returned to the runtime to take effect; normally in your `update` or `new` functions."]
pub struct Task<T> {
stream: Option<BoxStream<Action<T>>>,
@ -278,6 +277,17 @@ impl<T> Task<T> {
}
}
impl<T: std::fmt::Debug> std::fmt::Debug for Task<T> {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(
f,
"Task<{}>, units={}",
std::any::type_name::<T>(),
self.units
)
}
}
/// A handle to a [`Task`] that can be used for aborting it.
#[derive(Debug, Clone)]
pub struct Handle {