Files
endorphin-aster-vm/crates

Cargo 工作区

包名与目录一致,路径依赖定义在根 Cargo.toml。

目录 包名/产物 职责
core core,库 endor_core VM、执行帧与字节码求值循环,仅依赖本地 objects
objects objects 零依赖的核心对象、对象存储、代码对象与指令数据/静态验证
frontend frontend Endor 阅读器、字符 PEG lexer、token PEG parser、ASDL 生成的 AST/遍历/JSON 与编辑器接口,不执行源码
compiler compiler AST 名称/作用域分析、wordcode 模板生成和 VM 代码对象装载
host host UTF-8 JSON 文件基础信息,与数据库分离
storage storage 为数据库特殊类保留的显式连接适配,不提供基础信息存储
cli cli,二进制 cli 引导演示、源码解析/执行与文件信息命令,不使用数据库
server server,二进制 server HTTP 宿主与文件版本信息,不使用数据库

CLI 依赖 Compiler、Core、Frontend 与 Host,Server 依赖 Core 与 Host,二者不依赖 Storage;Compiler 依赖 Frontend 与 Core;Frontend 依赖 peg、serde/serde_json,不依赖 Core;Core 只依赖本地 Objects;Objects 不依赖 Core 或第三方包,二者均不依赖 Storage。未来特殊类的宿主实现按需依赖 Storage,见 数据库对象。

Endor 的解释执行流程与平台资源版本方向见 执行与版本模型。Compiler 已连接 Frontend 与 Core 的最小源码执行链路,见 编译契约;源码闭包、数值算术、版本锁、平台资源后端和持久化字节码缓存仍未实现。

core 的 Rust 库名为 endor_core,避免与标准库 core 重名,见 Cargo 目标说明。网络、数据库、进程配置和信号不进入 Core。全局说明见 架构,返回 项目入口。