Crates.io | oxc_ast |
lib.rs | oxc_ast |
version | 0.83.0 |
created_at | 2023-03-30 16:00:46.225362+00 |
updated_at | 2025-08-29 06:52:05.330045+00 |
description | A collection of JavaScript tools written in Rust. |
homepage | https://oxc.rs |
repository | https://github.com/oxc-project/oxc |
max_upload_size | |
id | 825235 |
size | 2,018,616 |
Abstract Syntax Tree definitions for JavaScript, TypeScript, and JSX.
This crate provides comprehensive AST (Abstract Syntax Tree) node definitions that support the full spectrum of JavaScript and TypeScript syntax, including JSX. The AST closely follows ECMAScript specifications while providing ergonomic APIs for manipulation.
oxc_allocator
for fast allocationoxc_ast_visit
for traversalThe AST design differs from estree in several important ways:
BindingIdentifier
, IdentifierReference
, and IdentifierName
instead of generic Identifier
AssignmentExpression.left
uses AssignmentTarget
instead of generic Pattern
Literal
with BooleanLiteral
, NumericLiteral
, StringLiteral
, etc.The AST is designed for:
All AST nodes are allocated in an arena (oxc_allocator
) for optimal performance.