несколько лет go, я задавал тот же вопрос Как разобрать groovy код? . Теперь, когда новый parrot parser вышел, мне интересно, могу ли я получить более качественные ответы:
Я хотел бы программно проанализировать Groovy файлы (в основном, файлы конфигурации), изменить их (возможно, добавить или изменить конфигурацию), а затем записать их обратно.
Я знаю, JSON может быть вариантом, но
- JSON не знает о комментариях
- JSON не содержит исполняемый код
Мне действительно нравятся groovy конфигурационные файлы, которые могут содержать комментарии для удобства чтения и код для специальных функций (например, выборка переменной среды)
У YAML есть комментарии, но в прошлый раз, когда я проверил некоторые парсеры, они выбросили все комментарии, что затрудняет их обратную запись после изменения конфигурации.
Есть мысли или идеи?
Обновление: thanx @daggett - да, ConfigSlurper - отличное решение. Но он также удаляет комментарии, поэтому запись конфигурации обратно с Slurper невозможна.
Вариант использования для изменения конфигурации: представьте что-то вроде конфигурации git, которую можно изменить с помощью команды линия.