mirror of
https://github.com/rustwasm/wasm-bindgen.git
synced 2024-12-15 21:02:10 +03:00
Merge pull request #1477 from lnicola/impl-debug-jsfuture
Implement Debug for JsFuture
This commit is contained in:
commit
a0700f8de3
@ -104,6 +104,7 @@
|
||||
#![deny(missing_docs)]
|
||||
|
||||
use std::cell::{Cell, RefCell};
|
||||
use std::fmt;
|
||||
use std::rc::Rc;
|
||||
use std::sync::Arc;
|
||||
|
||||
@ -128,6 +129,12 @@ pub struct JsFuture {
|
||||
callbacks: Option<(Closure<FnMut(JsValue)>, Closure<FnMut(JsValue)>)>,
|
||||
}
|
||||
|
||||
impl fmt::Debug for JsFuture {
|
||||
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
||||
write!(f, "JsFuture {{ ... }}")
|
||||
}
|
||||
}
|
||||
|
||||
impl From<Promise> for JsFuture {
|
||||
fn from(js: Promise) -> JsFuture {
|
||||
// Use the `then` method to schedule two callbacks, one for the
|
||||
|
@ -52,6 +52,13 @@ fn error_future_is_rejected_promise() -> impl Future<Item = (), Error = JsValue>
|
||||
})
|
||||
}
|
||||
|
||||
#[wasm_bindgen_test]
|
||||
fn debug_jsfuture() {
|
||||
let p = js_sys::Promise::resolve(&JsValue::from(42));
|
||||
let f = JsFuture::from(p);
|
||||
assert_eq!(&format!("{:?}", f), "JsFuture { ... }");
|
||||
}
|
||||
|
||||
#[wasm_bindgen]
|
||||
extern "C" {
|
||||
fn setTimeout(c: &Closure<FnMut()>);
|
||||
|
Loading…
Reference in New Issue
Block a user