Я использую protobuf 2.6.1 с этим плагином , который я сам скомпилировал.
В проекте, в котором я работаю, модели Protobuf уже присутствуют.Я попытался восстановить файлы с помощью следующей команды:
protoc --plugin = / path / to / the / compiled / plugin / objc-gen --objc_out =. / Gen / NAME.proto OF.protoTHE.proto FILES.proto
Как правило, файлы близко соответствуют ранее созданным моделям, однако существуют некоторые синтаксические различия.
Следующая строка .proto:
repeated MyType case = 4;
переводится на эту строку в Obj-C (Новый плагин, с ARC):
@property (readonly, strong) NSArray * case;
И раньше использовался суффикс List
(Старый плагин, не ARC, не 'работать с текущей версией macOS):
- (NSArray*) caseList;
Учитывая, что case
является ключевым словом в Objective-C, это вызывает ошибки компиляции.
Вопросы:
С какой версии Protobuf изменил синтаксис, чтобы пропустить List
суффикс?
Возможно ли запустить «старое» поведениес новым плагином?
Какая последняя версия плагина, которая работает на macOS 10.14.3 и может генерироватьоценить файлы со старым стилем (то есть с суффиксом list
)?