grmtools

grmtools is a suite of Rust libraries and binaries for parsing text, both at compile-time, and run-time. The constituent libraries (cfgrammar, lrlex, lrpar, and lrtable) are available as packages on crates.io.

Most users will probably be interested in the compile-time Yacc feature of lrpar, which allows traditional .y files to be used mostly unchanged in Rust. See the Quickstart Guide for a quick introduction to this feature and the API docs for more detailed information. lrpar also implements advanced error recovery based on the algorithms from the paper Don't Panic! Better, Fewer, Syntax Errors for LR Parsers by Diekmann and Tratt.