|
|
3 jaren geleden | |
|---|---|---|
| .. | ||
| README.md | 3 jaren geleden | |
| parser.template | 3 jaren geleden | |
| php5.y | 3 jaren geleden | |
| php7.y | 3 jaren geleden | |
| phpyLang.php | 3 jaren geleden | |
| rebuildParsers.php | 3 jaren geleden | |
| tokens.template | 3 jaren geleden | |
| tokens.y | 3 jaren geleden | |
php5.y: PHP 5 grammar written in a pseudo languagephp7.y: PHP 7 grammar written in a pseudo languagetokens.y: Tokens definition shared between PHP 5 and PHP 7 grammarsparser.template: A kmyacc parser prototype file for PHPtokens.template: A kmyacc prototype file for the Tokens classrebuildParsers.php: Preprocesses the grammar and builds the parser using kmyaccThe .y file is a normal grammar in kmyacc (yacc) style, with some transformations
applied to it:
Name[..., ...]. This is transformed into
new Name(..., ..., attributes())rebuildParsers.php for a list)Run php grammar/rebuildParsers.php to rebuild the parsers. Additional options:
KMYACC environment variable can be used to specify an alternative kmyacc binary.
By default the phpyacc dev dependency will be used. To use the original kmyacc, you
need to compile moriyoshi's fork.--debug option enables emission of debug symbols and creates the y.output file.--keep-tmp-grammar option preserves the preprocessed grammar file.