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