node_sys/class/fs/
write_stream.rs

1use crate::interface::WritableStream;
2use js_sys::Function;
3use wasm_bindgen::{prelude::*, JsCast};
4
5#[wasm_bindgen(module = "fs")]
6extern {
7    #[wasm_bindgen(extends = WritableStream)]
8    #[derive(Clone, Debug)]
9    pub type WriteStream;
10
11    //******************//
12    // Instance Methods //
13    //******************//
14
15    #[wasm_bindgen(method, getter, js_name = "bytesWritten")]
16    pub fn bytes_written(this: &WriteStream) -> f64;
17
18    #[wasm_bindgen(method, getter)]
19    pub fn path(this: &WriteStream) -> JsValue; // Buffer | string
20
21    #[wasm_bindgen(method, getter)]
22    pub fn pending(this: &WriteStream) -> bool;
23}
24
25//******************************//
26// Instance Methods (Overloads) //
27//******************************//
28
29#[wasm_bindgen]
30impl WriteStream {
31    pub fn add_listener_with_open(&self, listener: &Function) -> WriteStream {
32        self.add_listener("open", listener).unchecked_into()
33    }
34
35    pub fn add_listener_with_close(&self, listener: &Function) -> WriteStream {
36        self.add_listener("close", listener).unchecked_into()
37    }
38
39    pub fn on_with_open(&self, listener: &Function) -> WriteStream {
40        self.on("open", listener).unchecked_into()
41    }
42
43    pub fn on_with_close(&self, listener: &Function) -> WriteStream {
44        self.on("close", listener).unchecked_into()
45    }
46
47    pub fn once_with_open(&self, listener: &Function) -> WriteStream {
48        self.once("open", listener).unchecked_into()
49    }
50
51    pub fn once_with_close(&self, listener: &Function) -> WriteStream {
52        self.once("close", listener).unchecked_into()
53    }
54
55    pub fn prepend_listener_with_open(&self, listener: &Function) -> WriteStream {
56        self.prepend_listener("open", listener).unchecked_into()
57    }
58
59    pub fn prepend_listener_with_close(&self, listener: &Function) -> WriteStream {
60        self.prepend_listener("close", listener).unchecked_into()
61    }
62
63    pub fn prepend_once_listener_with_open(&self, listener: &Function) -> WriteStream {
64        self.prepend_once_listener("open", listener).unchecked_into()
65    }
66
67    pub fn prepend_once_listener_with_close(&self, listener: &Function) -> WriteStream {
68        self.prepend_once_listener("close", listener).unchecked_into()
69    }
70}