Potrzebuję podać komunikat z opcjonalnym polem w protobuf (składnia proto3). Pod względem proto 2 składni komunikat chcę wyrazić to coś w rodzaju:Jak zdefiniować pole opcjonalne w protobuf 3
message Foo {
required int32 bar = 1;
optional int32 baz = 2;
}
Z mojego zrozumienia „opcjonalne” koncepcja została usunięta z składni proto 3 (wraz z wymaganą koncepcji). Chociaż nie jest jasne, alternatywa - użycie wartości domyślnej do stwierdzenia, że pole nie zostało określone od nadawcy, pozostawia niejednoznaczność, jeśli domyślna wartość należy do prawidłowej domeny wartości (należy rozważyć na przykład typ boolowski).
Więc jak mam zakodować powyższy komunikat? Dziękuję Ci.
Czy podejście poniżej rozwiązanie dźwięku? wiadomość NoBaz { } wiadomość Foo { int32 bar = 1; oneof baz { NoBaz undefined = 2; int32 defined = 3; }; } – MaxP