Files
endorphin-aster-vm/crates/core/src/README.md
T
codex-bot 8bbe78e01e
Verify databases and deploy Aster VM / verify-and-deploy (push) Successful in 13m40s
Organize living documentation and directory guides
2026-10-18 20:58:42 +08:00

2.4 KiB
Raw Blame History

Core 源码导航

本目录解释实现文件如何分工;跨文件的设计规则只在 运行时文档 维护。公开 API 的最终导出入口是 lib.rs。

文件 内容
lib.rs 声明模块、公开类型导出、对象和字节码 rustdoc 示例
object.rs Value、CompareOp、ObjectPayload、ObjectHeader、EndorObject、Record、NativeFunction
heap.rs ObjectRef、稳定 Box 槽位、代际验证、引用事务、迭代释放、显式循环收集;含私有边界测试
vm.rs Vm/VmError、构造和对象操作入口、retain/release、循环回收入口
builtins.rs String、Dict、Cell、Function、BaseException 载荷与 trace 边
number.rs EndorNumber、Integer/Decimal/Rational/BinaryFloat/Complex 表示及装箱载荷
vm_builtins.rs 内置载荷校验、代码/函数工厂、Dict/Cell 操作、键语义和可变引用更新
instruction.rs Opcode、逻辑指令、EXTENDED_ARG 编解码、指令位置与比较参数
code.rs CodeLayout、EndorCode、共享 EndorCodeObject、操作数/控制流/栈校验
frame.rs EndorFrame、栈条目、执行位置元数据、ExecutionLimits
eval.rs execute/call、参数绑定、帧切换、取指分派、结果根转移与失败清理

常见修改入口

要修改什么 涉及文件 同步说明
对象公共操作或头部 object.rs、vm.rs、heap.rs 对象模型
内置载荷、无损数字或容器行为 builtins.rs/number.rs、vm_builtins.rs 基本对象
新操作码 instruction.rs、code.rs 的参数和栈验证、eval.rs 分派 字节码 VM、execution 测试
调用、闭包或返回值根管理 frame.rs、eval.rs、函数 trace 生命周期、builtins 与 execution 测试
新公开 API 对应实现模块与 lib.rs 导出 所属主题、示例、tests 导航

复制 ObjectRef/Value 不增加引用;不能在自定义载荷中擅自改变已登记的托管边。对象 API 不暴露原始指针或句柄索引构造。返回 core。