파서
Rust로 작성된 고성능 JavaScript / TypeScript 파서로, Oxc 프로젝트의 다른 도구에서 사용합니다.
기능
- swc 파서보다 약 3배 빠름 (벤치마크)
.js(x),.ts(x)파싱- Test262의 모든 파서 테스트 통과, Babel·TypeScript 테스트의 약 99% 통과
- ESM 정보를 바로 반환,
es-module-lexer불필요 - ✅ checker.ts와 호환
설치
Node.js
- 노드 바인딩 oxc-parser 사용
- stackblitz에서 시도
Rust
통합 크레이트 oxc 또는 개별 크레이트 oxc_ast, oxc_parser를 사용합니다.
Rust 사용 예는 여기에 있습니다.
출력(Pretty print)
파싱과 변환 후 코드를 출력할 수 있습니다.
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 작업으로 지원될 예정입니다.