Внедрить внешнюю зависимость в Protobuf? - PullRequest
1 голос
/ 13 июня 2011

У меня есть иерархия классов Protobuf, которые сериализуются и десериализуются. Теперь во время выполнения я хотел бы, чтобы один из этих классов содержал экземпляр моего класса, который реализован мной в C ++ и содержит какие-то украшения и кэши, которые я обнаружил во время выполнения. Есть ли способ реализовать это с помощью обычного компилятора protobuf?

Два варианта, которые я выбрал, - это использование индекса с целочисленным идентификатором для каждого экземпляра класса. Я бы хотел избежать этого из-за падения производительности.
Другой вариант - манипулировать сгенерированными исходными файлами с помощью внешнего скрипта. Это довольно некрасиво, и я также хотел бы избежать этого, если это возможно.

1 Ответ

0 голосов
/ 13 июня 2011

Создать .proto во время выполнения для описания вашего оформленного сообщения, вызвать protoc для получения дескриптора, а затем использовать DynamicMessage?

Немного грязно, но это может сработать. См. Сообщения с самоописанием в документации к protobuf. * ​​1005 *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...