Ruby / Python - генерация и разбор кода C / C ++ - PullRequest
3 голосов
/ 03 октября 2010

Мне нужно сгенерировать структуры и массивы C из данных, хранящихся в таблице базы данных, и поочередно анализировать похожую информацию. Я использую и ruby, и python для этой задачи, и мне было интересно, слышал ли кто-нибудь о модуле / lib, который обрабатывает это для одного или обоих языков? Я мог бы сделать это самостоятельно с некоторой обработкой строк, но хотел проверить, есть ли известный и проверенный парсер, о котором знают люди. спасибо.

Ответы [ 3 ]

3 голосов
/ 03 октября 2010

Проверьте программный инструмент с открытым исходным кодом. SWIG (Упрощенная Обертка и Генератор Интерфейса).Первое предложение вступления на веб-странице:

SWIG - это инструмент разработки программного обеспечения, который соединяет программы, написанные на C и C ++, с различными языками программирования высокого уровня.SWIG используется с различными типами языков, включая распространенные языки сценариев, такие как Perl, PHP, Python, Tcl и Ruby.

Очень зрелый (начальный выпуск - февраль 1996 г. согласно Википедии), и существует множествоучебные пособия, документация и помощь.

1 голос
/ 22 февраля 2012

Сам не использовал, но CAST может стоить посмотреть:

http://cast.rubyforge.org/

1 голос
/ 03 октября 2010

Существует базовый синтаксический анализатор структуры C здесь в википедии с разбиранием. Pyparsing - это модуль Python для создания синтаксических анализаторов путем объединения отдельных блоков анализа. (Никакой помощи по Ruby-части вопроса, хотя.)

...