C++ Class → JSON Schema генератор

Ввод C++ код

Загрузка редактора…

Вывод JSON Schema

Настройки

Выберите класс/структуру, которая будет root для JSON Schema.

Парсинг выполняется полностью в браузере. Ваш код не покидает страницу.

Вставьте ваши C++ классы, чтобы сразу получить JSON Schema.

Поддерживаются structs, публичные поля, популярные STL контейнеры и вложенные ссылки.

Как конвертировать классы и структуры C++ в JSON Schema — пошаговая инструкция

Этот онлайн конвертер (C++ class → JSON Schema) помогает генерировать JSON Schema из реальных моделей (DTOs, structs и classes), чтобы валидировать payloads, делиться контрактами и генерировать mock JSON.

  1. Шаг 1 — Вставьте исходник C++

    • Вставьте модели, которые хотите документировать, в левый редактор.
    • Добавьте все типы, на которые есть ссылки, в тот же сниппет, чтобы сгенерировались definitions.
    • Нажмите Пример, чтобы загрузить пример и увидеть ожидаемый формат.
  2. Шаг 2 — Выберите Корневой тип (если нужно)

    • Если найдено несколько definitions, выберите корневой тип, который соответствует вашему API payload.
    • Выходная схема строится вокруг выбранного root и может включать дополнительные definitions для связанных типов.
  3. Шаг 3 — Проверьте JSON Schema

    • Проверьте типы, required vs optional поля и вложенные структуры объектов/массивов.
    • Обратите внимание на definitions и $ref когда модели ссылаются друг на друга.
    • Скопируйте или скачайте схему для валидации, документации или schema-first разработки.
  4. Шаг 4 — Валидируйте или сгенерируйте mock JSON

    • Нажмите Сгенерировать мок-данные чтобы открыть Генератор моков с предзаполненной схемой.
    • Проверяйте реальные payloads по схеме, чтобы раньше замечать breaking changes.
    • Если вы используете продвинутую композицию схемы (например anyOf/oneOf/allOf), проверьте результат полноценным валидатором вроде Ajv.

Заметка о поддержке keywords

Сгенерированные схемы могут включать $ref и при необходимости можно добавить anyOf, oneOf, или allOf. Для сложных схем используйте полноценный JSON Schema validator и при необходимости сделайте dereference перед генерацией моков.

Связанные инструменты JSON Schema и генерации кода

Используйте эти инструменты, чтобы валидировать схемы, генерировать mock payloads, форматировать JSON-примеры и синхронизировать код и контракты.

Часто задаваемые вопросы

Какой C++ поддерживается?

Классы/структуры с публичными полями, примитивными типами, std::string, векторами, массивами и вложенными ссылками. Можно вставлять несколько определений, чтобы получить definitions.

Как типы C++ мапятся в JSON Schema?

Числа → integer/number, строки → string, bool → boolean. Контейнеры (vector/array) → arrays с items. Pointer/опциональные типы часто считаются optional.

Можно ли выбрать root класс?

Да. Если обнаружено несколько типов, откройте настройки и выберите root. Схема строится вокруг него.

Как сгенерировать мок-данные по схеме?

После генерации схемы нажмите "Сгенерировать мок-данные", чтобы открыть Генератор моков с предзаполненной схемой.

C++ Class → JSON Schema генератор | JSONSwiss