Я намерен использовать белочка в качестве языка сценариев для моего приложения C ++. Естественно, должен быть API для взаимодействия с кодом C ++ (для таких вещей, как доступ и изменение атрибутов в моей программе C ++). Этот API будет состоять из нескольких классов, перечислений и функций.
Хотя есть такие утилиты, как Sqrat, которые делают привязку отдельных функций C ++ к виртуальной машине Squirrel делом одной строки кода, это все еще не удовлетворительно: потребовалось бы, чтобы я создал оба класса C ++ с их функциями, чтобы фактически выполнять все взаимодействие работать, и тогда мне придется поддерживать все привязки, чтобы эти функции C ++ были известны и в моих скриптах. Мое намерение состоит в том, чтобы убрать эти двойные накладные расходы.
Так что мне нужен инструмент, который просто взял бы уже существующий заголовочный файл, содержащий все мои классы и функции C ++, и генерировал бы вызовы регистрации API из этого файла. И в то время как мы находимся в этом, конечно, было бы хорошо автоматически генерировать документацию для каждой функции (не важно, является ли это HTML или просто скриптом Squirrel, который содержит определения функций + комментарии или что-то еще).
Я знаю, что есть SWIG, но у него нет привязки Squirrel, и это не совсем то, что я искал бы в любом случае — в конце концов, мне нужно создать код оболочки C ++, а не код Squirrel. я видел сгибать, но я не уверен, что это то, что я ищу, либо. Так есть ли инструмент, который бы делал то, что я хочу (автоматизировать создание кода оболочки и документации API из заголовка C / C ++)? В противном случае, я думаю, мне, возможно, придется написать свой собственный маленький синтаксический анализатор C ++, который может анализировать простые определения функций и классов.
Задача ещё не решена.
Других решений пока нет …