mirror of
https://github.com/pjh456/OxideJS.git
synced 2026-10-25 19:21:11 +08:00
docs: 改写虚拟机属性与支撑域注释
vm_props.rs(14 点纯注释): - ordinary_get / ordinary_get_with_target / push_bytecode_getter_frame 补文档,写清读路径顺序、hole 边界与 getter 帧化返回值契约; - sync_global_builtin_mirror 首现展开「A 侧」= 全局对象自身属性槽; - length 赋值路径去历史化并译中英文注释(ToUint32 校验、稠密上限、 稀疏 hole 标记、逻辑长度另记、影子 length 同步); - call_or_push_setter / set_or_create_prop_value / define_data_property / define_accessor_property 补调用与定义路径文档。 vm_support.rs(2 点纯注释): - swap_intrinsic_proto 首现展开「P 原型」; - full_reset_legacy_for_bench 去掉「旧版」历史化措辞。 无行为改动。
This commit is contained in:
@@ -22,7 +22,8 @@ impl Vm {
|
||||
/// 才值得。
|
||||
pub(crate) const CONS_FLATTEN_UNITS: usize = 128;
|
||||
|
||||
/// 替换本 VM 独占的内建 P 对象:先恰好释放旧副本的属性区一次,
|
||||
/// 替换本 VM 独占的内建原型对象(生成器 / Promise / 异步族与 Object 的
|
||||
/// 原型,下文简称 P 原型):先恰好释放旧副本的属性区一次,
|
||||
/// 再让旧 Arc 归零(旧副本无 Drop 口径兜底,full_reset 重初始化
|
||||
/// 路径必须显式释放,否则逐测试累积)。
|
||||
pub(crate) fn swap_intrinsic_proto(slot: &mut P<JsObject>, new_obj: JsObject) {
|
||||
@@ -347,7 +348,7 @@ impl Vm {
|
||||
vm_info!("full_reset completed");
|
||||
}
|
||||
|
||||
/// 旧版全量重置:总是丢弃并重建整个 session 与内置对象(benchmark 专用)。
|
||||
/// benchmark 专用重置路径:总是丢弃并重建整个 session 与内置对象。
|
||||
#[doc(hidden)]
|
||||
pub fn full_reset_legacy_for_bench(&mut self) {
|
||||
self.session = KernelSession::new(&self.kernel_core);
|
||||
|
||||
Reference in New Issue
Block a user