Read OSS

oxc-project/oxc

6 articles

前提知識

01

Oxc コードベースを読み解く:アーキテクチャとクレートマップ

Oxc プロジェクトのアーキテクチャを体系的に解説します。プロジェクトのミッション、3 層クレート構成、CompilerInterface パイプライン、そして実践的な開発ガイダンスを網羅します。

02

アリーナアロケータとAST設計:Oxcのパフォーマンスの基盤

Oxcのすべてのパフォーマンスを支えるバンプアロケータの内部実装と、型安全性のためにESTreeから意図的に逸脱したAST設計を詳しく解説します。

03

ソースコードから意味へ:パーサーとセマンティックアナライザー

ソーステキストから完全に解決済みの AST が構築されるまでの流れを追い、再帰下降パーサーとエラーリカバリー、そして SemanticBuilder がスコープチェーンとシンボルテーブルを構築する仕組みを解説します。

04

AST を歩く2つの方法: Visit と Traverse システム

Oxc が持つ2つの AST 走査システム — 解析用の読み取り専用 Visit と、変換用の mutable な Traverse — および両者を生成する ast_tools コードジェネレータを解説します。

05

Oxlintの内側:リンターのアーキテクチャとルールシステム

CLIの引数解析から並列ファイル処理、診断出力に至るまで、oxlintのパイプライン全体を解説します。Rule trait、LintContext、そしてパフォーマンス最適化の詳細もカバーします。

06

コードの変換と出力:Transformer・Minifier・Codegen

Oxc パイプラインの出力側を解説します。Babel 互換の transformer、固定点方式の minifier、codegen プリンター、Prettier 互換フォーマッター、そして Node.js 向け NAPI バインディングを取り上げます。