rquickjs_extra_utils/
module.rs1use rquickjs::{module::Exports, Ctx, Object, Result, Value};
6
7pub fn export_default<'js, F>(ctx: &Ctx<'js>, exports: &Exports<'js>, f: F) -> Result<()>
8where
9 F: FnOnce(&Object<'js>) -> Result<()>,
10{
11 let default = Object::new(ctx.clone())?;
12 f(&default)?;
13
14 for name in default.keys::<String>() {
15 let name = name?;
16 let value: Value = default.get(&name)?;
17 exports.export(name, value)?;
18 }
19
20 exports.export("default", default)?;
21
22 Ok(())
23}