Я использую Parsekit для XCode, но эта проблема вполне может относиться к большинству генераторов парсеров. Разбираю скрипт гаммером и все работает. Однако у меня возникают проблемы со следующим шагом. Рассмотрим грммера:
@старт = строка+; линия = дерево;
дерево = "дерево" фруктовые ветви;
фрукты = 'с' 'фрукты' число; ветки = 'с' 'ветки' Номер;
И скрипт для прохождения:
дерево с плодами 8 с ветвями 12
Если я затем реализую методы для сопоставления, фрукты и ветки будут сопоставляться один раз, это ожидается.
Однако дерево будет совпадать дважды, почему? Это мешает мне построить дерево синтаксического анализа, которое я хочу.
Спасибо за любую помощь!