https://github.com/timsueberkrueb/yalr
Yet Another LR parser generator
https://github.com/timsueberkrueb/yalr
lalr lalr1 lr parser-generator rust
Last synced: 9 months ago
JSON representation
Yet Another LR parser generator
- Host: GitHub
- URL: https://github.com/timsueberkrueb/yalr
- Owner: timsueberkrueb
- License: apache-2.0
- Created: 2018-12-07T17:23:42.000Z (over 7 years ago)
- Default Branch: develop
- Last Pushed: 2019-02-19T14:18:19.000Z (over 7 years ago)
- Last Synced: 2025-07-11T08:05:24.210Z (11 months ago)
- Topics: lalr, lalr1, lr, parser-generator, rust
- Language: Rust
- Homepage:
- Size: 123 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- Contributing: docs/CONTRIBUTING.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# YALR
YALR (Yet Another LR parser generator) is a Rust library for generating `LALR(1)` parsers.
**IMPORTANT:** YALR is early work in progress and currently in an early prototypical state. Here be dragons.
## Features
* **Straightforward syntax** - no custom grammar files, only Rust code and macros
* **Tooling included** - Parser introspection tooling included (LALR parse table, LALR state diagram)
* **Lexer-independent** - Works with any lexer that implements the `Lexer` trait
## Build
Rust >= `1.31.0` is required to build YALR.
## Usage
Examples can be found in the [examples](examples) directory.
## License
YALR is licensed under either of the following licenses, at your option:
* [Apache License Version 2.0](LICENSE-APACHE)
* [MIT License](LICENSE-MIT)