lukeed/tidyPublic

feat: JS type and pattern handles

TypeNode::kind and Pat::kind map oxc's types and binding patterns to
bun's TypeKind and PatKind, with TupleElem, Mapped, PatProp and
PatElem. Parentheses around a type are skipped like those around an
expression. Where oxc has no node for one of bun's (a plain tuple
element, an array pattern element, a mapped type's parameter), the
handle takes the id of the node in its place; ty.rs and pat.rs say
where.
LELuke Edwards authored
b2ef308Patch
Parenta7288db
7 files changed+1103-20
StackedSplit
crates/tidy/src/js/ast/expr.rs+12 โˆ’15
crates/tidy/src/js/ast/key.rs+5 โˆ’0
crates/tidy/src/js/ast/list.rs+9 โˆ’1
crates/tidy/src/js/ast/mod.rs+16 โˆ’3
crates/tidy/src/js/ast/node.rs+66 โˆ’1
crates/tidy/src/js/ast/pat.rs+199 โˆ’0
crates/tidy/src/js/ast/ty.rs+796 โˆ’0