Лимонный парсер - как обрабатывать результат лимонного парсера

http://linuxgazette.net/106/chirico.html В примере 1 выводится результат. в example1.y, но я хочу обработать этот результат в main.c. Как я могу это сделать?


person Toan Nguyen    schedule 30.12.2013    source источник


Ответы (1)


Результат печатается, потому что ввод сказал program ::= ... { std::cout << ... }. т.е. результат разбора обрабатывается правилом верхнего уровня.

Возможно, вы захотите использовать %extra_argument { MyClass *pThis }. Затем Lemon добавит 4-й параметр к Parse, который доступен в правилах действий как pThis.

person MSalters    schedule 30.12.2013