Home » PHP » PHP_ParserGenerator
translate grammar files in Lemon Parser Generator format into a PHP 5 parser
This package is unmaintained.
Download latest release 0.1.7 (archived versions might be outdated)
License: New BSD License
Description
Translate a grammar file in the lemon parser generator format
into a PHP 5-based parser
There are a few PHP-specific changes to the lemon parser generator.
- %extra_argument is removed, as class constructor can be used to
pass in extra information
- %token_type and company are irrelevant in PHP, and so are removed
- %declare_class is added to define the parser class name and any
implements/extends information
- %include_class is added to allow insertion of extra class information
such as constants, a class constructor, etc.
Other changes make the parser more robust, and also make reporting
syntax errors simpler. Detection of expected tokens eliminates some
problematic edge cases where an unexpected token could cause the parser
to simply accept input.
Otherwise, the file format is identical to the Lemon parser generator
Maintainers
- Greg Beaver (cellog) — lead, inactive
Dependencies
Required
- PHP (>= 5.1.0)
- PEAR Installer (>= 1.4.3)
Releases
- 0.1.7 (alpha, 2010-10-25)
Release notes
License: New BSD License
Automatically built QA release
Req #11361 better help message - cweiskeBug #12652 Generated ParseryyToken class has broken __toString() - urkle
Bug #12730 Generated Parser destructor *can* loop forever - urkle
Req #13416 Provide an option to choose the parser template file - rix0r
Bug #16703 terminals starting with Z letter cause problems - taras
Bug #17381 infinite loop in __destruct of generated parser - jespino
Bug #17382 Empty action causes undefined function - jespino
- 0.1.6 (alpha, 2010-03-05)
Release notes
License: New BSD License
- fix Bug #11645: unused rhs labels undetected [r0vert]
- fix Bug #11647: substitution of @X works incorrectly [r0vert]
- Bug #10685 fatal error when calling "phplemon --help" - 0.1.5 (alpha, 2007-03-05)
Release notes
License: New BSD License
- fix Bug #10245: if multiple RHS identifiers are the same, no error
- fix Bug #10260: exception instead of helpful error message - 0.1.4 (alpha, 2006-12-15)
Release notes
License: New BSD License
- fix Bug #9345: help output broken
- 0.1.3 (alpha, 2006-11-20)
Release notes
License: New BSD License
fix Bug #9346: lots of PHP warnings instead of syntax error
fix phplemon.bat replacements - 0.1.2 (alpha, 2006-10-12)
Release notes
License: New BSD License
fix replacements in phplemon script in unix (Hartmut Holzgraefe) (no code changes)
- 0.1.1 (alpha, 2006-07-18)
Release notes
License: New BSD License
update to New BSD license (no code changes)
Bugs
| ID | Status | Type | Version | Date | Summary |
|---|---|---|---|---|---|
| #9345 | Closed | Bug | CVS | 2006-11-15 | help output broken |
| #9346 | Closed | Bug | CVS | 2006-11-15 | lots of PHP warnings instead of syntax error |
| #9893 | Bogus | Bug | CVS | 2007-01-20 | dirname(__FILE__) should not be used for include/require |
| #10245 | Closed | Bug | 0.1.4 | 2007-03-02 | if multiple RHS identifiers are the same, no error |
| #10260 | Closed | Bug | 0.1.4 | 2007-03-04 | exception instead of helpful error message |
| #10685 | Closed | Bug | 0.1.5 | 2007-04-11 | fatal error when calling "phplemon --help" |
| #11361 | Closed | Req | 0.1.5 | 2007-06-19 | better help message |
| #11645 | Closed | Bug | CVS | 2007-07-19 | unused rhs labels undetected |
| #11647 | Assigned | Bug | CVS | 2007-07-19 | substitution of @X works incorrectly |
| #12652 | Closed | Bug | 0.1.5 | 2007-12-10 | Generated ParseryyToken class has broken __toString() |
| #12730 | Closed | Bug | 0.1.5 | 2007-12-19 | Generated Parser destructor *can* loop forever |
| #13416 | Closed | Req | CVS | 2008-03-17 | Provide an option to choose the parser template file |
| #14781 | Closed | Bug | 0.1.5 | 2008-10-12 | Will not show options |
| #16703 | Closed | Bug | 0.1.5 | 2009-10-15 | terminals starting with Z letter cause problems |
| #17193 | Closed | Bug | 0.1.5 | 2010-03-04 | Forgot $this-> on ParserGenerator.php:265 |
| #17374 | No Feedback | Bug | 2010-05-06 | yy_get_expected_tokens() returns incomplete list | |
| #17375 | No Feedback | Bug | 0.1.6 | 2010-05-06 | yy_get_expected_tokens() destroys state |
| #17381 | Closed | Bug | 0.1.6 | 2010-05-07 | infinite loop in __destruct of generated parser |
| #17382 | Closed | Bug | 0.1.6 | 2010-05-07 | Empty action causes undefined function |
| #17710 | Open | Req | SVN | 2010-08-16 | Reduce the PHPCS errors and warnings |
| #17825 | Closed | Bug | SVN | 2010-08-26 | patch: Code-style fixes |
| #17841 | Open | Bug | 0.1.6 | 2010-09-02 | Bugs in PHP-grammar |
| #18263 | Open | Bug | 0.1.7 | 2011-02-11 | Infinite loop on syntax error when using recursive grammar rules |