Несколько семестров назад у меня был класс, где мы написали очень элементарный синтаксический анализатор и, в конце концов, интерпретатор. После уроков я преобразовал свой анализатор в синтаксический анализатор C ++, который довольно неплохо справлялся с синтаксическим анализом C ++ до тех пор, пока я ничего не делал с препроцессором или макросами. Я мог бы использовать его для чтения своих классов и функций и делать такие аккуратные вещи, как автоматическое создание программ чтения или записи классов или настройка обратных вызовов функций из текстового файла.
Однако моя программа довольно ограничена. Я уверен, что мог бы потратить некоторое время, чтобы сделать его более надежным и сделать более аккуратные вещи, но я не хочу тратить время и усилия, если уже есть более надежные инструменты, которые делают то же самое. Я полагаю, что должно быть что-то вроде этого, так как парсеры являются неотъемлемой частью компиляторов, но я не видел инструментов специально для автоматической генерации кода, которые позволили бы легко разбираться со структурами данных, представляющими классы, функции и переменные для C ++ специально. Есть ли инструменты, которые делают это?
Edit:
Надеюсь, это немного прояснит то, что я ищу. Программа, которую я имею, запускается как предварительный шаг в визуальной студии. Он читает мои исходные файлы, составляет список классов, их членов, их функций и т. Д., Который затем используется для генерации нового кода. В настоящее время я просто использую его, чтобы было легко читать и записывать мои структуры данных в простой текстовый файл, но я мог бы делать и другие вещи. Программы чтения и записи файлов выводятся в виде простых файлов .cpp и .h, которые я включаю в остальную часть моего проекта, так же, как и любой другой файл. То, что я ищу, - это инструменты, которые делают подобные вещи, так что я могу решить, стоит ли мне продолжать использовать свой собственный или переключиться на какое-то лучшее решение. Я не ищу ничего, что генерирует машинный код или редактирует код, который я написал.