ps_promise/implementations/
debug.rs1use std::fmt::Debug;
2
3use crate::{Promise, PromiseRejection};
4
5impl<T, E> Debug for Promise<T, E>
6where
7 T: Unpin + Debug,
8 E: PromiseRejection + Debug,
9{
10 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
11 let mut fmt = f.debug_struct("Promise");
12
13 match self {
14 Self::Pending(_) => fmt.field("state", &"Pending"),
15 Self::Resolved(value) => fmt.field("resolved", value),
16 Self::Rejected(err) => fmt.field("rejected", err),
17 Self::Consumed => fmt.field("state", &"Consumed"),
18 };
19
20 fmt.finish()
21 }
22}