parser/README.md
2022-11-27 16:48:12 +00:00

1.3 KiB

php-parser-rs

A handwritten recursive-descent parser for PHP written in Rust, for fun.

[![justforfunnoreally.dev badge](https://img.shields.io/badge/justforfunnoreally-dev-9ff)](https://justforfunnoreally.dev)


Usage

use php_parser_rs::*;

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();

Warning

: This crate is not ready for any form of production use yet. There are still a lot of things missing from the parser, so please use at your own risk.

Contributing

All contributions to this repository are welcome. It's the perfect project for Rust beginners since we don't use many of Rust's complex features and the core concepts in the parser are purposely simple.

If you do wish to contribute, we just ask you to follow a few simple rules.

  1. Create a pull request from a non-main branch on your fork.
  2. Provide a short, but clear, description of your changes.
  3. Have fun and don't take it all too seriously!

Credits