mirror of
https://github.com/pjh456/OxideJS.git
synced 2026-10-25 19:21:11 +08:00
feat: TLA 模块求值 emit 侧编译为合成异步函数
This commit is contained in:
@@ -1,6 +1,13 @@
|
||||
use oxide_runtime_api::NativeResult;
|
||||
use oxide_types::object::JsObject;
|
||||
|
||||
use crate::bindings::{apply_binding_table, BindEnv};
|
||||
use crate::vm::Vm;
|
||||
|
||||
/// `__moduleWaitAll` 原生入口:委托 `Vm::module_wait_all`(聚合 gate,见 promise 模块)。
|
||||
fn module_wait_all(vm: &mut Vm, args: &[u8]) -> NativeResult {
|
||||
vm.module_wait_all(args)
|
||||
}
|
||||
|
||||
/// 把普通全局函数(`isNaN`、`parseInt`、`decodeURIComponent` 等)绑定到 global。
|
||||
pub fn bind_global(env: BindEnv<'_>, global: &mut JsObject) {
|
||||
@@ -56,6 +63,7 @@ pub fn bind_global(env: BindEnv<'_>, global: &mut JsObject) {
|
||||
2,
|
||||
),
|
||||
("__moduleData", oxide_builtins::module::module_data::<crate::vm::Vm> as *const (), 2),
|
||||
("__moduleWaitAll", module_wait_all as *const (), 0),
|
||||
("eval", oxide_builtins::eval::eval::<crate::vm::Vm> as *const (), 1),
|
||||
(
|
||||
"structuredClone",
|
||||
|
||||
Reference in New Issue
Block a user