Necesito especificar un mensaje con un campo opcional en protobuf (sintaxis proto3). En términos de sintaxis proto 2, el mensaje que quiero expresar es algo como:
message Foo {
required int32 bar = 1;
optional int32 baz = 2;
}
Según tengo entendido, el concepto "opcional" se ha eliminado de la sintaxis proto 3 (junto con el concepto obligatorio). Aunque no está clara la alternativa: usar el valor predeterminado para indicar que un campo no ha sido especificado por el remitente, deja una ambigüedad si el valor predeterminado pertenece al dominio de valores válidos (considere, por ejemplo, un tipo booleano).
Entonces, ¿cómo se supone que debo codificar el mensaje anterior? Gracias.