Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/wez/lemon-php

A PHP parser generator, based on the lemon parser generator tool. lemon-php requires a C compiler to build, and this will generate pure-PHP parsers.
https://github.com/wez/lemon-php

Last synced: about 1 month ago
JSON representation

A PHP parser generator, based on the lemon parser generator tool. lemon-php requires a C compiler to build, and this will generate pure-PHP parsers.

Awesome Lists containing this project

README

        

(for licensing and copyright information, see COPYING)

This is an adaptation of lemon that optionally emits PHP code to implement a
parser for the grammar described in a .y file.

Usage:

cc -o lemon lemon.c
lemon -lPHP my.y

This will output my.php, which contains a PHP class that implements your parser.
Usage is along the lines of:

$P = new ParseParser();
$S = new Yylex(); // you can get one of these using the JLexPHP package

while ($t = $S->yylex()) {
$P->Parse($t->type, $t);
}
$P->Parse(0);

You can find out more about the lemon syntax from:
http://www.hwaci.com/sw/lemon/lemon.html

Enjoy!

--Wez.