oxc_syntax/
lib.rs

1//! Common code for JavaScript Syntax
2#![warn(missing_docs)]
3
4use std::num::NonZeroU32;
5
6use oxc_ast_macros::ast;
7
8pub mod class;
9pub mod comment_node;
10pub mod es_target;
11pub mod identifier;
12pub mod keyword;
13pub mod module_record;
14pub mod node;
15pub mod number;
16pub mod operator;
17pub mod precedence;
18pub mod reference;
19pub mod scope;
20#[cfg(feature = "serialize")]
21mod serialize;
22pub mod symbol;
23pub mod xml_entities;
24
25mod generated {
26    #[cfg(debug_assertions)]
27    mod assert_layouts;
28    mod derive_clone_in;
29    mod derive_content_eq;
30    mod derive_dummy;
31    #[cfg(feature = "serialize")]
32    mod derive_estree;
33}
34
35/// Dummy type to communicate the content of `nonmax::NonMaxU32` to `oxc_ast_tools`.
36#[ast(foreign = NonMaxU32)]
37#[expect(dead_code)]
38struct NonMaxU32Alias(NonZeroU32);