Comments 6
Идея интересная, но боюсь на большой кодовой базе, когда такие шаблоны генерируются под каждый класс, билд тайм будет значительно замедляться. В целом понятно, как c помощью шаблонов и визитора сериализовать или отобразить поля класса, но как таким способом проделать обратную операцию, т.е. по json восстановить объект?
По json восстановить объект — собственно то же самое, только вместо записи происходит чтение поля из json. В статье конечно код сильно упрощен, но в движке все поддерживается.
Кода генерится и правда много, но не больше чем если бы он генерился просто для сериализации. Здесь ведь просто специализация шаблона. А типы повторяются. Тоже самое почти что
Кода генерится и правда много, но не больше чем если бы он генерился просто для сериализации. Здесь ведь просто специализация шаблона. А типы повторяются. Тоже самое почти что
имеет смысл смотреть в сторону:
boost::hana::BOOST_HANA_ADAPT_STRUCT — для обозначения мемберов класса/структуры под сериализацию.
nlohman::json секцию adl_serializer — для перевода в json и обратно
boost::hana::BOOST_HANA_ADAPT_STRUCT — для обозначения мемберов класса/структуры под сериализацию.
nlohman::json секцию adl_serializer — для перевода в json и обратно
У нас было подобное решение с шаблонами-миксинами и кодогенератором на одном старом проекте... В результате проект собирался вечность, дебагать нагенеренное было практически невозможно, да и итоговая производительность не радовала. Выкинули вот это вот всё - полегчало) правда)
На что заменили? У вас тоже сериализация была? У меня вроде не оч заметно, пока что )
Sign up to leave a comment.
Мета-программирование атрибутов для сериализации