Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 

Repository files navigation

LR(k) Parser

Генерация LR(k)-автомата и таблиц ACTION/GOTO с проверкой конфликтов. Если грамматика не относится к классу LR(k), бросается ParsingError. Значение k задаётся в конструкторе (по умолчанию k=1).

Структура

  • parser_lr0.py — класс LRkParser c методами fit и predict.
  • cli.py — чтение ввода в формате задания и вывод результатов, первый аргумент командной строки — значение k.
  • tests/ — unit-тесты: положительный сценарий и случай с конфликтом.

Запуск CLI

python -m LR.cli < input.txt          # k=1
python -m LR.cli 2 < input.txt        # k=2

Запуск тестов

python -m unittest discover -s LR/tests

LR

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors