scato / phpeg
PEG Parser Generator
Requires
- php: >=5.3.0
- symfony/console: ~2.1
Requires (Dev)
- behat/behat: 2.4.*@stable
- phpspec/phpspec: ~2.0
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2024-11-09 17:40:57 UTC
README
PEG Parser Generator
This project is still unstable. Some features like case-insensitive literals are stil missing. The rest should work, though.
Usage
Install this tool as a dev requirement:
"require-dev": {
"scato/phpeg": "1.*"
}
You can now generate (and regenerate) parsers using the command line tool:
$ vendor/bin/phpeg generate <input-file> [<output-file>]
Read the grammar section in the documentation for help on the grammar syntax. Read the usage section for more details on both basic and advanced usage.
About
PHPeg is a PEG parser generator.
The generated parser is a PEG parser that uses memoization. This effectively makes it a Packrat Parser, or so I'm told.
PHPeg is heavily inspired by PEG.js. The grammar section contains details on the differences.