Commit Graph

40 Commits

Author SHA1 Message Date
pjh123 2b74fa81a6 fix: Error 子类型构造器描述符与原型链对齐规范(prototype/name meta + [[Prototype]] 指向 Error) 2026-08-16 19:10:51 +08:00
pjh123 d213d697d4 feat: SuppressedError 内置错误实现(三字段属性序 + 构造器接线) 2026-08-16 19:04:09 +08:00
pjh123 a00ef2a7c6 feat: Iterator.prototype 返回迭代器方法(map/filter/take/drop/flatMap) 2026-08-16 16:38:45 +08:00
pjh123 327893043b feat: Iterator.prototype 终端方法(forEach/every/some/find/reduce/toArray) 2026-08-16 16:02:14 +08:00
pjh123 1f2a020585 feat: Iterator helpers 基建——Symbol.dispose 注册与 %IteratorHelperPrototype% 2026-08-16 14:44:47 +08:00
pjh123 2b86cd241d test262: $262 宿主对象最小绑定 + is not defined 判定白名单化
引擎侧:绑定 $262 宿主对象(evalScript/global/gc 可用,detachArrayBuffer/
createRealm/agent 抛 not supported 而非 ReferenceError),并加入编译期
已知全局表;引用 $262.* 的测试从全量 skip 转为真实执行。

runner 侧:is not defined 不再一票吞 skip——解析错误消息中的标识符名,
仅在缺失全局白名单($262/structuredClone/queueMicrotask)内才按能力
缺失跳过;其余 is not defined 按真实失败计入,修复后应转 PASS 的
测试恢复可见。
2026-08-16 02:47:02 +08:00
pjh123 06441e09ff fix: 全局构造器与内置对象属性改非枚举与规范对齐 2026-08-16 02:29:42 +08:00
pjh123 946c96472f fix: object 家族 dirty 时重建迭代器绑定并对齐 Iterator.prototype,绑定幂等化避免重复槽 2026-08-16 00:25:30 +08:00
pjh123 e448c642a5 fix: 迭代器原型形状补全(Iterator.prototype/string 中继层/next 原型化) 2026-08-15 23:36:01 +08:00
pjh123 ec32e42ce5 feat: 迭代器原型基建:%IteratorPrototype% 链 + 各集合迭代器原型
新增 %IteratorPrototype%(含 @@iterator 返回自身,经原型链被全部迭代器
继承,it[Symbol.iterator]() === it 恒等)与 %ArrayIteratorPrototype%/
%MapIteratorPrototype%/%SetIteratorPrototype%/%StringIteratorPrototype%/
%RegExpStringIteratorPrototype%(链到 %IteratorPrototype%);Array/Map/Set/
TA/String/matchAll 迭代器包装统一挂对应原型;补 Array/String 的 @@iterator
别名绑定。集合迭代器原型不含 return 方法(规范集合迭代器无 return)。
2026-08-15 22:57:03 +08:00
爱特每羊队 5ec0dc2b7d feat: implement Temporal Instant zoned conversion 2026-08-11 20:54:25 +08:00
爱特每羊队 7e3d7b43b5 feat: 实现最小 BigInt 子集(字面量/算术/比较/构造器,Temporal 前置) 2026-08-10 23:02:31 +08:00
爱特每羊队 1765d567a1 feat: Temporal 最小子集(Temporal.Now/Instant/PlainDate/PlainTime) 2026-08-10 18:18:39 +08:00
爱特每羊队 7c2e9ec1ff fix: symbol 作属性键独立编码,不再塌缩为空串 2026-08-09 16:09:49 +08:00
爱特每羊队 6d7ad03417 feat: TypedArray 第一批解锁(%TypedArray% 构造器、原型访问器、of/from、bind 绑参、harness) 2026-08-09 12:26:31 +08:00
爱特每羊队 2f8f1c3b71 feat: with 语句、成员位/移位复合赋值、CALL_NATIVE 无目标修复
with 语句:新增 emit 支持,with 体内自由标识符动态解析(对象属性优先,
回退外层),支持读/写/复合赋值/自增自减/delete/var 初始化动态化,
TO_OBJECT opcode 处理原始值对象,顶层 this 绑定全局对象。

复合赋值:新增 6 个 COMPOUND_MEMBER_BIT_* opcode 支持成员位/移位复合赋值,
修复 computed member 复合赋值覆盖 bug,with 内标识符复合赋值动态化。

CALL_NATIVE:实现全局 isNaN/isFinite 并绑定,用户覆盖 builtin 名时
回退通用调用路径而非报错,局部遮蔽 builtin 名走普通 CALL。

test262: with 34 pass(基线 0),compound-assignment 320 pass(基线 223)
2026-08-09 07:22:46 +08:00
爱特每羊队 504ffaf126 feat: Set/Map 构造器接收可迭代实参 + size 访问器 + ES2024 set-methods 2026-08-08 18:01:00 +08:00
爱特每羊队 cbb139e956 fix: native 构造器可构造性标志(OBJ_TYPE_CONSTRUCTOR)+ Reflect.construct/new 校验 2026-08-07 20:44:04 +08:00
爱特每羊队 328b8a3ddc docs: 补充注释与格式化 2026-08-06 23:10:27 +08:00
爱特每羊队 f461235f04 docs: 添加 Rustdoc 注释 2026-08-05 21:46:47 +08:00
爱特每羊队 05f1056cde perf(test262): +2.4% pass rate via Function .name/.length and ArrayLike support
- Array indexOf/includes/lastIndexOf: ArrayLike receiver + fromIndex + SameValueZero
- Function.prototype methods: add .length property via bind_method_static
- Error objects: add .name property via create_kind_error
- Constructor functions: add .name via make_pair + .length via bind_constructor!
- test262: 8497→9009 pass (+512), 38.3%→40.7% rate

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
(cherry picked from commit af61949e6cab1b149a13e571e29bacc4267d5690)
2026-06-30 12:42:57 +08:00
爱特每羊队 2f5d91bd48 feat: 提取 oxide_builtins 独立 crate,泛型化 <H: VmHost> 2026-06-25 22:38:23 +08:00
爱特每羊队 466a0815ca refactor: 字符串值改用 JsString 指针表示,键与字面量改用 PermInterner 2026-06-24 20:15:15 +08:00
爱特每羊队 6bf5daa1af refactor: 清理未使用符号,合并bind_constructor宏,统一init/rebind绑定列表,bind_number改为表驱动 2026-06-24 12:12:44 +08:00
爱特每羊队 11d6696531 feat: 接入 selective reset 并补充验证基准 2026-06-15 22:11:47 +08:00
爱特每羊队 59ac640e1d feat: 添加 TypedArray 全局构造器 2026-06-14 19:57:11 +08:00
爱特每羊队 b6f64c1e7c feat: 添加 DataView 全局构造器 2026-06-14 19:07:06 +08:00
爱特每羊队 ba57ce9da2 feat: 添加 ArrayBuffer 全局构造器 2026-06-14 18:49:03 +08:00
爱特每羊队 bd4dc4f788 feat: 实现 Reflect 全局方法 2026-06-14 18:10:17 +08:00
爱特每羊队 775961f240 feat: 实现 Iterator.from 全局绑定 2026-06-14 17:58:16 +08:00
爱特每羊队 4c3a5830c9 feat: 绑定全局 escape/unescape 与缺失全局桩函数 2026-06-14 17:21:38 +08:00
爱特每羊队 d242d08e6d refactor: 拆分 Kernel 中可变 Session 与不可变 Core 2026-06-14 12:58:09 +08:00
爱特每羊队 bf74adf7f5 refactor: 扁平化对象属性存储并优化常量池与 IC 热路径 2026-06-13 23:59:47 +08:00
爱特每羊队 625647e489 refactor: 统一调用调度并安全化 IC 缓存 2026-06-10 16:17:35 +08:00
爱特每羊队 e588fa4c8c fix: 绑定 Function 和 Object prototype harness helper 2026-06-09 19:31:46 +08:00
爱特每羊队 d20eadaccc feat: 注入 harness 并补齐关键全局内建 2026-06-09 17:08:10 +08:00
爱特每羊队 5d1d25074e style: 减少自动格式化换行 2026-06-09 00:53:46 +08:00
爱特每羊队 4713b46d5c refactor: 收敛 builtin 绑定表驱动并补完数组宏化收尾 2026-06-09 00:49:59 +08:00
爱特每羊队 06acc7e34a feat: 支持 RegExpr 与 Symbol 部分方法 2026-06-08 10:36:39 +08:00
爱特每羊队 800386522d refactor: 拆分绑定函数与封装宏以简化模块实现 2026-06-08 07:37:46 +08:00