From aaad3786b78526d9345f8af37baf0f6a501b1bb3 Mon Sep 17 00:00:00 2001 From: pjh456 <147148383@qq.com> Date: Thu, 17 Sep 2026 12:41:02 +0000 Subject: [PATCH] =?UTF-8?q?docs:=20=E4=BF=AE=E6=AD=A3=E6=95=B0=E7=BB=84?= =?UTF-8?q?=E5=8A=A9=E6=89=8B=E4=B8=8E=E7=B1=BB=E5=9E=8B=E5=8C=96=E6=95=B0?= =?UTF-8?q?=E7=BB=84=E7=9A=84=E6=B3=A8=E9=87=8A=E7=A4=BA=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 改动点: - array/common.rs 的 get_this_arraylike:消费者示例由实际不经过本助手的 values/entries/keys/iterator 改为真实调用族,即遍历查找族、切片拼接族与 不可变复制族。 - typed_array.rs 的 get_typed_array_data:对象指针为空分支从"接收者不兼容" 移入"内部状态无效",与代码实际抛出的错误消息一致。 条件项:本批无新增可选 doc 补充,其余 16 处注释与上一提交保持一致。 --- crates/oxide_builtins/src/array/common.rs | 4 +++- crates/oxide_builtins/src/typed_array.rs | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/crates/oxide_builtins/src/array/common.rs b/crates/oxide_builtins/src/array/common.rs index 76d16377..050bbff7 100644 --- a/crates/oxide_builtins/src/array/common.rs +++ b/crates/oxide_builtins/src/array/common.rs @@ -73,7 +73,9 @@ pub(crate) fn get_this_array_ref(vm: &mut H, val: JsValue) -> Result< } /// 取 this 为真数组或类数组对象(带 length 属性的普通对象),按规范读取长度, -/// 返回 (对象指针, 长度, 是否为真数组),供只读方法族(values/entries/keys/iterator 等)共用。 +/// 返回 (对象指针, 长度, 是否为真数组),供遍历查找族(forEach/map/filter/reduce/ +/// some/every/find 族/flatMap)、切片拼接族(slice/concat/join/indexOf/includes/ +/// lastIndexOf)与不可变复制族(toReversed/with/toSorted/toSpliced)共用。 /// /// # 步骤 /// 1. this 非对象(null/undefined/原始值)→ TypeError。 diff --git a/crates/oxide_builtins/src/typed_array.rs b/crates/oxide_builtins/src/typed_array.rs index d0e1ec90..3c55e90f 100644 --- a/crates/oxide_builtins/src/typed_array.rs +++ b/crates/oxide_builtins/src/typed_array.rs @@ -186,8 +186,8 @@ pub fn drop_typed_array_native(obj: &mut JsObject) -> u64 { /// 取接收者的 TypedArrayData 视图(按值返回,非借出)。 /// /// # 边界与前提 -/// - 接收者非对象、对象指针为空或不是 TypedArray 对象时抛 TypeError(接收者不兼容); -/// - `native_fn` 槽为空值或存空指针时抛 TypeError(内部状态无效)。 +/// - 接收者非对象或不是 TypedArray 对象时抛 TypeError(接收者不兼容); +/// - 对象指针为空、`native_fn` 槽为空值或存空指针时抛 TypeError(内部状态无效)。 /// /// # 注意事项 /// - 返回的是解引用后的拷贝(`Ok(*data_ptr)`),底层 buffer 仍由对象持有,