C++ — как реализовать парсер консольных команд?

Необходимо реализовать простенький парсер команд на с++.
Хороший пример того, что я хочу видеть, можно найти в играх от Valve или Id Software.

Собственно, варианты реализации, которые пришли мне в голову, такие:
1) Использовать луа или питон как скриптовый язык (по-моему, это как из пушки по воробьям)
2) Отрыть что-то из буста, сходу не нагуглил.
3) Небольшая библиотечка, которая реализовывает нужный функционал. Тоже в интернете сходу ничего не нашел удачного.

Собственно, какие есть варианты реализации, чтобы не писать свой велосипед?
  • Вопрос задан
  • 3882 просмотра
Пригласить эксперта
Ответы на вопрос 4
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
Комментировать
tsarevfs
@tsarevfs Куратор тега C++
C++ developer
Если нужно что-то сложнее присваиваний - boost::python не так и сложно использовать.
Ответ написан
AxisPod
@AxisPod
Вам не парсер надо, а полноценный скриптовый язык. Парсер не умеет ничего кроме как синтаксического анализа, а вам же надо еще и выполнять.

Так что берите именно lua или python и вперед, а уж текст они сами распарсят как надо.
Ответ написан
afiskon
@afiskon
Если нужен парсер чего-то, берите Flex и Bison.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы