Задача опять про раскраску. Нужно запустить парсер с начала файла, периодически запоминать его состояние в тех или иных местах, чтобы можно было из этого состояния многократно перезапустить.
Вопрос: есть ли такая библиотека, которая позволяет это реализовать? При этом хочется управлять понятием «состояние». Например, поток, из которого читаю, я хочу ему каждый раз подсовывать новый. Ну и весь стек до глубины сибирских руд мне не нужен. Мне нужно состояние только от точки входа в парсер.
Также хочется, чтобы содержимое некоторых переменных копировалось при сохранении состояния вычисления, а то может произойти размазывание (smash) мутируемых данных.