Цитата:
Сообщение от учусь
может что-то такое
если на входе терминал(int,float, имя_класса и тд) -> делаем цикл (больше,маленькие буквы, цифры) пока не знак "=" -> цикл по цифрам до ";" -> проверяем, есть ли еще терминалы -> начали новый анализ -> иначе нету переменных.
зы. "Для того, чтобы КС-грамматика была LL(1)-грамматикой, необходимо, чтобы множества выбора для правил с одинаковыми левыми частями не пересекались, т.е. не имели общих терминальных символов." - будешь ли делать такую проверку?)
|
То есть после каждого ';' в секции parameters проверять следующий терминал (float, int)/handlers/end_of_class, и в зависимости от этого терминала переходить к дальнейшему разбору?