mirror of
https://github.com/danog/parser.git
synced 2024-11-26 20:04:57 +01:00
633 B
633 B
Trunk Parser
A handwritten recursive-descent parser for PHP code.
Overview
The parser produces an abstract syntax tree containing Statement
and Expression
types describing the PHP code provided.
Usage
use trunk_lexer::*;
use trunk_parser::*;
let mut lexer = Lexer::new(None);
let tokens = lexer.tokenize(&source_code[..]).unwrap();
let mut parser = Parser::new(None);
let ast = parser.parse(tokens).unwrap();
The resulting ast
is a Vec<trunk_parser::Statement>
and can easily be iterated or converted into a dedicated iterator type.