Skip to content

项目概述

功能需求

  • 词法分析
  • 语法解析
  • AST 构建
  • 解释执行
  • 变量与函数

技术栈

  • 纯 Rust 实现
  • 递归下降解析器
  • 访问者模式

项目结构

mini-interpreter/
├── Cargo.toml
├── src/
│   ├── main.rs           # 入口
│   ├── lib.rs            # 库入口
│   ├── lexer/
│   │   ├── mod.rs
│   │   ├── token.rs      # Token 定义
│   │   └── scanner.rs    # 词法扫描
│   ├── parser/
│   │   ├── mod.rs
│   │   ├── ast.rs        # AST 定义
│   │   └── parser.rs     # 语法解析
│   ├── interpreter/
│   │   ├── mod.rs
│   │   ├── env.rs        # 环境
│   │   └── eval.rs       # 执行器
│   └── error.rs          # 错误处理
└── tests/
    └── interpreter_test.rs