Read OSS

oxc-project/oxc

6 articles

前置知识

01

探索 Oxc 代码库:架构与 Crate 全景图

深入导览 Oxc 项目的架构设计,涵盖其核心目标、三层 Crate 组织结构、CompilerInterface 流水线以及实用的开发指南。

02

Arena 分配器与 AST 设计:Oxc 的性能基石

深入剖析支撑 Oxc 全部性能优势的 bump 分配器,以及为了类型安全而有意偏离 ESTree 的 AST 设计思路。

03

从源码到语义:解析器与语义分析器

追踪从源文本到完整解析 AST 的全过程,涵盖递归下降解析器、错误恢复机制,以及 SemanticBuilder 如何构建作用域链与符号表。

04

遍历 AST 的两种方式:Visit 与 Traverse 系统

深入探讨 Oxc 的两套 AST 遍历系统——用于分析的只读 Visit,以及用于转换的可变 Traverse——以及生成两者的 ast_tools 代码生成器。

05

深入 Oxlint:Linter 架构与规则系统

全流程解析 oxlint 的处理管道——从 CLI 参数解析、并行文件处理,到诊断信息输出——深入介绍 Rule trait、LintContext 以及各项性能优化手段。

06

代码转换与输出:Transformer、Minifier 与 Codegen

深入介绍 Oxc 流水线的输出端——兼容 Babel 的 transformer、不动点 minifier、codegen 打印器、兼容 Prettier 的 formatter,以及 Node.js NAPI 绑定。