pjh123
c6f0e76bf8
feat: Temporal.PlainTime add/subtract 时间域叠加
2026-08-17 06:02:06 +08:00
pjh123
0037f0e5ad
feat: Temporal.PlainTime until/since 差值计算
2026-08-17 02:40:21 +08:00
pjh123
bed1abd3f3
feat: Temporal.PlainTime equals/compare 比较语义
2026-08-17 02:34:30 +08:00
pjh123
27cc6333f5
feat: Temporal.PlainTime.from 三分支解析(字符串/实例/bag)
2026-08-17 02:19:01 +08:00
pjh123
a8e68a7a45
feat: Temporal.PlainTime toString options 与字符串化族
2026-08-17 02:14:30 +08:00
pjh123
e06071429c
feat: ZonedDateTime.round 舍入(day 双路径 + 真因子校验)
2026-08-17 01:55:52 +08:00
pjh123
430f922ef3
feat: ZonedDateTime.compare 跨实例按 epoch 比较(复用 from 解析器,忽略时区/日历)
2026-08-17 01:27:54 +08:00
pjh123
68f8637acf
feat: ZonedDateTime.add/subtract 时长运算(复用 PDT 叠加算法 + 中间日期检查 + 时区/日历槽保真)
2026-08-17 00:02:00 +08:00
pjh123
5bf674e1c6
feat: ZonedDateTime.with/withPlainTime/withCalendar 字段合并(offset 默认 prefer + 时间串歧义解析)
2026-08-16 23:49:30 +08:00
pjh123
064f565b21
feat: ZonedDateTime.until/since 差异计算(复用 difference_core)
2026-08-16 23:21:08 +08:00
pjh123
0761fb3010
feat: ZonedDateTime.from 三分支解析(字符串/对象/property bag + offset/disambiguation 选项)
2026-08-16 22:50:48 +08:00
pjh123
c7b238e518
feat: eval 全局注册与最小执行(间接 eval)
2026-08-16 22:25:33 +08:00
pjh123
04067a4fe5
feat: ZonedDateTime.withTimeZone 与 equals 基础实现
2026-08-16 22:07:38 +08:00
pjh123
3baa868232
feat: ZonedDateTime.toString 族(toJSON/toLocaleString/valueOf 绑定)
2026-08-16 21:56:57 +08:00
pjh123
662fbcde86
feat: ZonedDateTime 27 个属性 getter 宏化实现
2026-08-16 21:21:07 +08:00
pjh123
6c7bcdeed6
feat: AsyncDisposableStack disposeAsync 状态机(needsAwait 微任务序 + 错误链合并 + 绑定三时机)
2026-08-16 20:11:50 +08:00
pjh123
e96142ef4f
feat: DisposableStack 测试九组(构造器/方法语义/原型形状/GC 交叉)
2026-08-16 19:32:23 +08:00
pjh123
7c02d3ece1
feat: DisposableStack 内置对象(状态盒 + use/adopt/defer/dispose/move + GC 六处接线 + 绑定三时机)
2026-08-16 19:22:57 +08:00
pjh123
75b429fac7
fix: Error 子类型构造器描述符与原型链对齐规范(prototype/name meta + [[Prototype]] 指向 Error)
2026-08-16 19:10:51 +08:00
pjh123
e100bfb8b4
feat: SuppressedError 内置错误实现(三字段属性序 + 构造器接线)
2026-08-16 19:04:09 +08:00
pjh123
f1c4b33735
feat: Iterator.prototype 返回迭代器方法(map/filter/take/drop/flatMap)
2026-08-16 16:38:45 +08:00
pjh123
4ea723764f
feat: Iterator.prototype 终端方法(forEach/every/some/find/reduce/toArray)
2026-08-16 16:02:14 +08:00
pjh123
9f13d107ec
feat: Iterator helpers 基建——Symbol.dispose 注册与 %IteratorHelperPrototype%
2026-08-16 14:44:47 +08:00
pjh123
fe8892079e
chore: 全仓 rustfmt 格式化归拢
2026-08-16 12:50:36 +08:00
pjh123
4a1e0a3e9e
fix: IC 快速路径 symbol 原始值走 Symbol.prototype 链
2026-08-16 10:31:34 +08:00
pjh123
4e2644016b
test: $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
c59ad64e7d
fix: 全局构造器与内置对象属性改非枚举与规范对齐
2026-08-16 02:29:42 +08:00
pjh123
3df08dddff
fix: object 家族 dirty 时重建迭代器绑定并对齐 Iterator.prototype,绑定幂等化避免重复槽
2026-08-16 00:25:30 +08:00
pjh123
69152ad608
fix: 迭代器原型形状补全(Iterator.prototype/string 中继层/next 原型化)
2026-08-15 23:36:01 +08:00
pjh123
2359c4e0a4
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
pjh123
c052f5a619
feat: Function.prototype[Symbol.hasInstance] 绑定与 bound 函数构造语义
...
@@hasInstance 按 OrdinaryHasInstance 实现(非可调用 this 返回 false、
prototype 非对象抛 TypeError、bound 链递归到最内层 target);
new boundFn() 解包 [[BoundTargetFunction]] 链后转发构造:绑定实参前置、
新对象原型取 target.prototype、new.target 替换为最内层 target。
2026-08-15 22:40:45 +08:00
pjh123
528f893e63
fix: 错误对象属性枚举性、toString 标签与构造器调用语义
...
- message/name 属性改非枚举(CreateNonEnumerableDataPropertyOrThrow),
Object.keys/for-in/JSON.stringify 不再泄漏错误信息
- 新增 Error 家族对象标签,Object.prototype.toString 输出 [object Error],
含子类型与用户子类(沿原型链判定)
- Error 家族构造器补 length=1,函数调用忽略 this 一律新建对象
- JSON.stringify 序列化仅含可枚举自身属性(规范 EnumerableOwnPropertyNames)
2026-08-15 21:30:28 +08:00
pjh123
7362137720
chore: 清理 oxide_vm clippy 告警
2026-08-14 05:26:46 +08:00
pjh123
df23fdff39
feat: compiler/test262 runner 接线 + 模块顶层 this 绑定
...
- Compiler::compile_module:Emitter::emit_program_module → 统一 IR 管线(DCE/regalloc/lower/flatten)
- CompiledModule.is_es_module:VM run 时模块顶层 this=undefined(脚本仍为全局对象)
- 全局注册 __moduleLinkGet
- test262 runner:Test262ModuleLoader(相对路径解析 + import attributes 判定 json/text/bytes),is_module 走 compile_module
2026-08-12 17:37:33 +08:00
pjh123
f2214ab95b
feat: Temporal.Duration.prototype.round(无日历单位路径:选项校验+24h 天舍入+按最大单位平衡,绑定注册)
2026-08-12 16:16:22 +08:00
pjh123
1563fdc845
feat: Temporal.Duration.prototype.add(分量精确求和+按最大单位平衡+范围校验,绑定注册);add 子集 32/0
2026-08-12 14:50:13 +08:00
pjh123
1a71e0b8d6
fix: Temporal 构造器补 length 自有属性(Instant/ZonedDateTime/PlainDate/PlainTime/Duration 按规范 arity)
2026-08-12 14:37:31 +08:00
pjh123
79346097ac
feat: Temporal.PlainDateTime.prototype.equals(实例/字符串/对象/ZDT 统一比较,绑定注册)
2026-08-12 14:27:25 +08:00
pjh123
62991cfa4b
feat: 新增 Symbol.species well-known symbol 绑定(Symbol.species 解析/键槽/内建对象)
2026-08-12 12:50:53 +08:00
pjh123
af61dcf6fc
feat: ToPropertyKey 改走 ToPrimitive,Symbol 键与描述符,转换错误可捕获
2026-08-12 09:59:56 +08:00
pjh123
c287708ddc
feat: 补 entries/keys/findLastIndex/toSorted/toReversed/toSpliced/with
2026-08-12 03:42:42 +08:00
pjh123
6bcd090b06
feat: 补 BigInt.prototype[Symbol.toStringTag] 数据属性
...
补 @@toStringTag 数据属性,writable:false、enumerable:false、configurable:true,
使 Object.prototype.toString 与属性描述符符合规范。剩余 built-ins/BigInt 的
Symbol.toStringTag.js verifyProperty 失败仍受 String(Symbol) 支持阻塞。
2026-08-12 03:41:22 +08:00
pjh123
aa51d57660
feat: BigInt 构造器 ToPrimitive 语义、toString(radix)、asIntN/asUintN
2026-08-12 02:23:27 +08:00
pjh123
bbca9a5c3a
feat: PlainDateTime until/since 按规范舍入语义实现
2026-08-12 01:18:34 +08:00
pjh123
47733ae224
feat: PlainDateTime add/subtract 算术
2026-08-11 23:14:42 +08:00
pjh123
3cf2c792ba
feat: Temporal PlainDateTime 转换与序列化
2026-08-11 22:29:00 +08:00
pjh123
66712e05a5
feat: Temporal PlainDateTime 基础实现
2026-08-11 21:32:15 +08:00
pjh123
90a162d39a
feat: Temporal Instant 时区转换
2026-08-11 20:54:25 +08:00
pjh123
b982e964a7
feat: Temporal Instant 序列化
2026-08-11 19:14:24 +08:00
pjh123
59da42fea9
feat: Temporal Instant 差值实现
2026-08-11 18:22:21 +08:00