このプロジェクトについて
Oxc for Rubyは、RustベースのOxcコンパイラをパッケージ化したgemで、Ruby開発者にJavaScriptおよびTypeScript向けの高性能ツール群を提供します。Rubyから直接JavaScriptのパース、変換、ミニファイが可能で、JavaScriptランタイムが不要です。
主な機能は以下の通りです:
- **ミニファイ**:設定可能なオプションでJavaScriptを圧縮・マングルします。
- **変換**:TypeScriptとJSXをコンパイルし、ターゲットのECMAScriptバージョンに構文をダウンレベル化し、同じパスでオプションでミニファイします。
- **宣言ファイル**:TypeScriptソースから`.d.ts`ファイルを生成します。
- **パース**:ESTree準拠のASTをプレーンなRubyハッシュとして取得し、エラーリカバリと診断情報を提供します。
- **ASTウォークと書き換え**:ビジターパターンでASTを走査・変更し、元のフォーマットを保持します。
- **シンボルとモジュール解析**:宣言されたシンボル、未解決シンボル、インポート、エクスポートを抽出します。
- **ソースマップ**:ソースマップをJSONテキストとして生成します。
- **ランタイムヘルパー**:ダウンレベル化のためのヘルパー関数を管理し、外部ヘルパーや仮定を用いて回避するオプションを提供します。
gemのバージョンはバンドルされているOxcのバージョンに対応し、多くのプラットフォーム向けにプリコンパイル済みgemが用意されています。それ以外の場合は、Rust 1.96以上が必要なソースからのビルドとなります。APIは直感的に設計されており、オプションは厳密に検証され、結果は詳細な診断情報を提供します。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.