node_sys/class/fs/
dir.rs

1use crate::{class::fs::Dirent, interface::AsyncIterator};
2use js_sys::{Function, JsString, Object, Promise};
3use wasm_bindgen::prelude::*;
4
5#[wasm_bindgen(module = "fs")]
6extern {
7    #[wasm_bindgen(extends = Object, extends = AsyncIterator)]
8    #[derive(Clone, Debug)]
9    pub type Dir;
10
11    // FIXME: event overloads
12
13    //******************//
14    // Instance Methods //
15    //******************//
16
17    #[wasm_bindgen(method)]
18    pub fn close(this: &Dir, callback: Option<&Function>) -> Promise;
19
20    #[wasm_bindgen(method, js_name = "closeSync")]
21    pub fn close_sync(this: &Dir);
22
23    #[wasm_bindgen(method)]
24    pub fn read(this: &Dir) -> Promise;
25
26    #[wasm_bindgen(method, js_name = "readSync")]
27    pub fn read_sync(this: &Dir) -> Dirent;
28
29    //*********************//
30    // Instance Properties //
31    //*********************//
32
33    #[wasm_bindgen(method, getter)]
34    pub fn path(this: &Dir) -> JsString;
35}