パーサー
本パーサーは本番環境で利用可能です。
機能
- swc パーサーより 3 倍高速 (ベンチマーク)。
.js(x)および.ts(x)を解析できます。- Test262 のすべてのパーサーテストと、Babel および TypeScript からの 99% のテストを通過します。
- ESM 情報を直接返すため、
es-module-lexerは不要です。 - ✅ チェッカー.ts と連携可能
インストール
Node.js
- node バインディングである oxc-parser を使用してください。
- stackblitz で試してみてください。
Rust
oxc という総合的なクレート、または個別に oxc_ast と oxc_parser クレートを使用してください。
Rust での使用例は こちら にあります。
出力
パースおよび変換後、コードを出力できます。
ここでは esrap (parse の逆!) を使って直接例を示します:
js
import { print } from "esrap";
import ts from "esrap/languages/ts";
import { parseSync } from "oxc-parser";
const { program } = parseSync("test.js", 'alert("hello oxc & esrap");');
const { code } = print(program, ts());
console.log(code); // alert("hello oxc & esrap");INFO
現在、コメントは出力されません。これは oxc-parser #13285 により対応予定です。
