neo_solidity/parser.rs
1//! Yul Parser Module
2//!
3//! Parses Yul tokens into an Abstract Syntax Tree (AST). The parser handles
4//! Yul language constructs including functions, control flow, and expressions.
5//!
6//! # AST Structure
7//!
8//! - [`AstNode`] - Base AST node with type and location
9//! - [`AstNodeType`] - Enum of all possible node types
10//!
11//! # Supported Constructs
12//!
13//! - Object definitions and code blocks
14//! - Function definitions with parameters and return values
15//! - Variable declarations (`let x := ...`)
16//! - Control flow: `if`, `for`, `switch/case`
17//! - Function calls and built-in operations
18
19use crate::error::CompilerError;
20use crate::lexer::{Token, TokenType};
21
22include!("parser/parser_types.rs");
23include!("parser/parser_impl.rs");