feat: 支持可选链空值合并与逻辑赋值

This commit is contained in:
爱特每羊队
2026-06-18 15:26:16 +08:00
parent 7bbdc7e3da
commit 1016f432f1
14 changed files with 869 additions and 87 deletions
@@ -23,6 +23,12 @@ impl Vm {
}
}
#[inline(always)]
pub(crate) fn dispatch_nullish(&mut self, rd: usize, a: usize, b: usize) {
let val = self.regs[a];
self.regs[rd] = if val.is_nullish() { self.regs[b] } else { val };
}
#[inline(always)]
pub(crate) fn dispatch_not(&mut self, rd: usize, a: usize) {
let b = !coercion::to_boolean(self.regs[a], self.kernel_core.string_forge().as_ref());