Я никогда не слышал о таком инструменте.Более того, я подозреваю, что такой инструмент (генератор C / C ++ для JSON) нецелесообразен.
Есть ряд причин, почему.Вот некоторые из наиболее важных:
Ключевая проблема заключается в том, что JSON не имеет схем.Это означает, что генератору API придется прибегнуть к просмотру примеров сообщений и попытаться определить, какие поля следует ожидать и каковы их типы.Это может быть сложно и даже теоретически невозможно в некоторых случаях.
В таких языках, как Java и C #, существуют прямые и "правильные" способы создания объектных API;например, соглашения JavaBeans.В C ++ и особенно в C нет соглашений, и существуют сложные проблемы, такие как протоколы контейнеров и управление памятью.
В таких языках, как Java и C #, безопасны во время выполненияи имеют различные механизмы языкового уровня, которые позволяют использовать динамическое программирование для работы с бессхемным характером JSON.Например, в Java есть рефлексия, прокси-классы, динамическая генерация кода и динамическая загрузка кода, и все это может помочь в работе с JSON.В C и C ++ эти механизмы обычно недоступны.
Короче говоря, если вы используете C или C ++, библиотеки JSON хороши настолько, насколько это возможно.
FOLLOWUP
Как отмечается в комментарии, это может быть осуществимо в контексте специфической реализации сервера на основе JAX-RS.Вам нужно получить внутренние метаданные, применить к ним сопоставление JSON и сгенерировать API C / C ++.Проблемы:
- Реализация генератора будет зависеть от платформы.
- Клиент на основе C / C ++ не сможет справиться с изменениями в эффективной схеме без регенерации API.и соответствующие изменения кода клиента.(Напротив, решение на основе библиотеки JSON теоретически может быть закодировано для работы с неожиданными новыми атрибутами и т. Д.)
- У вас все еще есть проблема управления контейнером / памятью.