Указание динамического приоритета и старшинства для оператора в Menhir/Ocamlyacc

Я пытаюсь разобрать язык, в котором операторы имеют динамические атрибуты (приоритет и приоритет ), используя синтаксический анализатор Menhir (, аналогичный Ocamlyacc ). На этапе лексирования все операторы заполняют токен OP:string(, поэтому «+» превращается в (OP "+")и т. д. ).

Атрибуты операторов определяются во время синтаксического анализа и заполняют таблицу, связывающую операторы и их атрибуты. Учитывая эту таблицу, как я могу указать Menhir динамически изменять приоритет правила, анализирующего операторы на основе данных этой таблицы?

Спасибо, Чарли П.

6
задан Thomash 7 May 2013 в 12:19
поделиться