tsz_parser/parser/parse_rules/mod.rs
1//! Parsing rule modules
2//!
3//! This module contains extracted parsing logic organized by category.
4//! Each module focuses on a specific aspect of parsing (expressions, statements, etc.)
5//!
6//! ## Design Notes
7//!
8//! Expression parsing logic is implemented directly in `state.rs` using methods
9//! on `ParserState` for optimal performance and simpler control flow. The precedence
10//! climbing algorithm for binary expressions and all primary/unary expression parsing
11//! are integrated into the main parser state.
12//!
13//! JSX fragment detection (`<>`) is performed inline during parsing rather than via
14//! lookahead for efficiency - no backtracking is needed when we can check for `>`
15//! immediately after consuming `<`.
16
17mod utils;
18
19pub use utils::{
20 is_identifier_or_keyword, look_ahead_is, look_ahead_is_abstract_declaration,
21 look_ahead_is_async_declaration, look_ahead_is_const_enum, look_ahead_is_import_call,
22 look_ahead_is_import_equals, look_ahead_is_module_declaration,
23 look_ahead_is_type_alias_declaration,
24};