70 releases (36 breaking)
new 0.36.0 | Nov 9, 2024 |
---|---|
0.34.0 | Oct 26, 2024 |
0.22.1 | Jul 28, 2024 |
0.11.0 | Mar 30, 2024 |
0.0.1 | Mar 30, 2023 |
#339 in Programming languages
92,505 downloads per month
Used in 23 crates
(16 directly)
2.5MB
52K
SLoC
Oxc AST (Abstract Syntax Tree) Nodes
Supports JavaScript, TypeScript and JSX.
Types
AST types are similar to estree and typescript-eslint's definition, with a few notable exceptions:
Identifier
is replaced with explicitBindingIdentifier
,IdentifierReference
,IdentifierName
, per ECMAScript Specification.AssignmentExpression
.left
Pattern
is replaced withAssignmentTarget
.Literal
is replaced withBooleanLiteral
,NumericLiteral
,StringLiteral
etc.
Field order of types follows "Evaluation order" defined by ECMAScript spec. For TypeScript types, we follow how field order is defined in tsc.
Oxc's visitors (Visit
, VisitMut
, Traverse
) visit AST node fields in same order
as they are defined in the types here.
Parsing
You can obtain an AST by parsing source code with a Parser
from oxc_parser
.
Cargo Features
"serde"
enables support for serde serialization
Dependencies
~5–11MB
~112K SLoC