feat: Map/Set 支持 for-of 迭代与 entries/values/keys(内部槽方式)

This commit is contained in:
爱特每羊队
2026-06-27 17:49:19 +08:00
parent 19bc8e64a4
commit a78056f2ff
6 changed files with 337 additions and 3 deletions
+3
View File
@@ -24,6 +24,9 @@ pub fn bind_map(core: &Arc<KernelCore>, session: &KernelSession, global: &mut Js
("delete", oxide_builtins::map::map_delete::<crate::vm::Vm> as *const (), 1),
("clear", oxide_builtins::map::map_clear::<crate::vm::Vm> as *const (), 0),
("size", oxide_builtins::map::map_size::<crate::vm::Vm> as *const (), 0),
("entries", oxide_builtins::map::map_entries::<crate::vm::Vm> as *const (), 0),
("values", oxide_builtins::map::map_values::<crate::vm::Vm> as *const (), 0),
("keys", oxide_builtins::map::map_keys::<crate::vm::Vm> as *const (), 0),
],
);
+3
View File
@@ -23,6 +23,9 @@ pub fn bind_set(core: &Arc<KernelCore>, session: &KernelSession, global: &mut Js
("delete", oxide_builtins::set::set_delete::<crate::vm::Vm> as *const (), 1),
("clear", oxide_builtins::set::set_clear::<crate::vm::Vm> as *const (), 0),
("size", oxide_builtins::set::set_size::<crate::vm::Vm> as *const (), 0),
("entries", oxide_builtins::set::set_entries::<crate::vm::Vm> as *const (), 0),
("values", oxide_builtins::set::set_values::<crate::vm::Vm> as *const (), 0),
("keys", oxide_builtins::set::set_keys::<crate::vm::Vm> as *const (), 0),
],
);