1.7 KiB
1.7 KiB
core
Endor VM 包,仅负责 Vm、执行帧、调用协议和 wordcode 求值循环。依赖本地 objects 管理对象与堆,没有第三方依赖。Cargo 包名为 core,Rust 引用名为 endor_core,避免与标准库 core 重名。
| 内容 | 入口 |
|---|---|
| Cargo.toml | endor_core 库目标、本地 objects 依赖和工作区 lint |
| src | VM、内部执行帧、求值循环和对象操作委托 |
| tests | 原有对象入口的兼容行为、调用/执行语义与生命周期 |
Vm::new 创建独立 ObjectStore 和空执行状态;代码对象、全局字典和函数仍按宿主需要显式创建,再 execute/call。EndorObject、Number、ObjectRef、内置载荷、代码对象/指令定义与 VmError 在 objects 中实现;endor_core 保留这些类型的兼容重导出,既有 Vm 对象方法委托到 ObjectStore。
宿主可显式引导托管 Object/Type 和名义继承,见类型机制;普通源码 class 和继承方法分派已经接入,显式 NativeTyped 原生分配继承已接入,trait 与完整元类尚未接入。网络、数据库和进程环境属于宿主,源码阅读器与 lexer/parser 属于 frontend,AST 名称分析与字节码生成属于独立 compiler,见 执行与版本模型。