doc: 修正README中upvalue捕获层数限制的表述

实际机制是增量逐层建立,通过enclosing_locals合并链
理论上不限深度;仅一次性链创建受限于3层穿透

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
0264408
2026-06-26 10:49:41 +08:00
parent 9f75ec68ee
commit deab894864
+1 -1
View File
@@ -177,7 +177,7 @@ let t = os.clock(); // 模块化调用
- **基于栈的字节码 VM** — AST 先编译为字节码再执行,单一执行路径,无语义漂移
- **错误容忍解析** — 词法分析器和解析器均将错误收集到 `Vec` 中,单次运行可报告多个诊断信息,而非在第一个错误处就中止
- **`Rc<RefCell<>>` 共享所有权** — 用于 `Value::Object``Value::Array``UpvalueObj`,提供动态可变语义。闭包通过 upvalue 机制捕获外层局部变量
- **词法作用域闭包** — 编译时解析 upvalue 捕获,支持最多 3 层传递式捕获(本地 → 父级 → 祖级)
- **词法作用域闭包** — 编译时解析 upvalue 捕获,通过增量链路支持任意深度嵌套;`resolve_upvalue` 中显式处理 3 层穿透(本地→父级→祖级),更深层级通过逐层编译自然建立
## 许可证