Package com.google.protobuf
Class DescriptorProtos.FieldDescriptorProto.Builder
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite.Builder<MessageType,BuilderType>
-
- com.google.protobuf.GeneratedMessageLite.Builder<DescriptorProtos.FieldDescriptorProto,DescriptorProtos.FieldDescriptorProto.Builder>
-
- com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder
-
- All Implemented Interfaces:
DescriptorProtos.FieldDescriptorProtoOrBuilder,MessageLite.Builder,MessageLiteOrBuilder,java.lang.Cloneable
- Enclosing class:
- DescriptorProtos.FieldDescriptorProto
public static final class DescriptorProtos.FieldDescriptorProto.Builder extends GeneratedMessageLite.Builder<DescriptorProtos.FieldDescriptorProto,DescriptorProtos.FieldDescriptorProto.Builder> implements DescriptorProtos.FieldDescriptorProtoOrBuilder
Describes a field within a message.
Protobuf typegoogle.protobuf.FieldDescriptorProto
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite.Builder
AbstractMessageLite.Builder.LimitedInputStream
-
-
Field Summary
-
Fields inherited from class com.google.protobuf.GeneratedMessageLite.Builder
instance
-
-
Constructor Summary
Constructors Modifier Constructor Description privateBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DescriptorProtos.FieldDescriptorProto.BuilderclearDefaultValue()For numeric types, contains the original text representation of the value.DescriptorProtos.FieldDescriptorProto.BuilderclearExtendee()For extensions, this is the name of the type being extended.DescriptorProtos.FieldDescriptorProto.BuilderclearJsonName()JSON name of this field.DescriptorProtos.FieldDescriptorProto.BuilderclearLabel()optional .google.protobuf.FieldDescriptorProto.Label label = 4;DescriptorProtos.FieldDescriptorProto.BuilderclearName()optional string name = 1;DescriptorProtos.FieldDescriptorProto.BuilderclearNumber()optional int32 number = 3;DescriptorProtos.FieldDescriptorProto.BuilderclearOneofIndex()If set, gives the index of a oneof in the containing type's oneof_decl list.DescriptorProtos.FieldDescriptorProto.BuilderclearOptions()optional .google.protobuf.FieldOptions options = 8;DescriptorProtos.FieldDescriptorProto.BuilderclearProto3Optional()If true, this is a proto3 "optional".DescriptorProtos.FieldDescriptorProto.BuilderclearType()If type_name is set, this need not be set.DescriptorProtos.FieldDescriptorProto.BuilderclearTypeName()For message and enum types, this is the name of the type.java.lang.StringgetDefaultValue()For numeric types, contains the original text representation of the value.ByteStringgetDefaultValueBytes()For numeric types, contains the original text representation of the value.java.lang.StringgetExtendee()For extensions, this is the name of the type being extended.ByteStringgetExtendeeBytes()For extensions, this is the name of the type being extended.java.lang.StringgetJsonName()JSON name of this field.ByteStringgetJsonNameBytes()JSON name of this field.DescriptorProtos.FieldDescriptorProto.LabelgetLabel()optional .google.protobuf.FieldDescriptorProto.Label label = 4;java.lang.StringgetName()optional string name = 1;ByteStringgetNameBytes()optional string name = 1;intgetNumber()optional int32 number = 3;intgetOneofIndex()If set, gives the index of a oneof in the containing type's oneof_decl list.DescriptorProtos.FieldOptionsgetOptions()optional .google.protobuf.FieldOptions options = 8;booleangetProto3Optional()If true, this is a proto3 "optional".DescriptorProtos.FieldDescriptorProto.TypegetType()If type_name is set, this need not be set.java.lang.StringgetTypeName()For message and enum types, this is the name of the type.ByteStringgetTypeNameBytes()For message and enum types, this is the name of the type.booleanhasDefaultValue()For numeric types, contains the original text representation of the value.booleanhasExtendee()For extensions, this is the name of the type being extended.booleanhasJsonName()JSON name of this field.booleanhasLabel()optional .google.protobuf.FieldDescriptorProto.Label label = 4;booleanhasName()optional string name = 1;booleanhasNumber()optional int32 number = 3;booleanhasOneofIndex()If set, gives the index of a oneof in the containing type's oneof_decl list.booleanhasOptions()optional .google.protobuf.FieldOptions options = 8;booleanhasProto3Optional()If true, this is a proto3 "optional".booleanhasType()If type_name is set, this need not be set.booleanhasTypeName()For message and enum types, this is the name of the type.DescriptorProtos.FieldDescriptorProto.BuildermergeOptions(DescriptorProtos.FieldOptions value)optional .google.protobuf.FieldOptions options = 8;DescriptorProtos.FieldDescriptorProto.BuildersetDefaultValue(java.lang.String value)For numeric types, contains the original text representation of the value.DescriptorProtos.FieldDescriptorProto.BuildersetDefaultValueBytes(ByteString value)For numeric types, contains the original text representation of the value.DescriptorProtos.FieldDescriptorProto.BuildersetExtendee(java.lang.String value)For extensions, this is the name of the type being extended.DescriptorProtos.FieldDescriptorProto.BuildersetExtendeeBytes(ByteString value)For extensions, this is the name of the type being extended.DescriptorProtos.FieldDescriptorProto.BuildersetJsonName(java.lang.String value)JSON name of this field.DescriptorProtos.FieldDescriptorProto.BuildersetJsonNameBytes(ByteString value)JSON name of this field.DescriptorProtos.FieldDescriptorProto.BuildersetLabel(DescriptorProtos.FieldDescriptorProto.Label value)optional .google.protobuf.FieldDescriptorProto.Label label = 4;DescriptorProtos.FieldDescriptorProto.BuildersetName(java.lang.String value)optional string name = 1;DescriptorProtos.FieldDescriptorProto.BuildersetNameBytes(ByteString value)optional string name = 1;DescriptorProtos.FieldDescriptorProto.BuildersetNumber(int value)optional int32 number = 3;DescriptorProtos.FieldDescriptorProto.BuildersetOneofIndex(int value)If set, gives the index of a oneof in the containing type's oneof_decl list.DescriptorProtos.FieldDescriptorProto.BuildersetOptions(DescriptorProtos.FieldOptions value)optional .google.protobuf.FieldOptions options = 8;DescriptorProtos.FieldDescriptorProto.BuildersetOptions(DescriptorProtos.FieldOptions.Builder builderForValue)optional .google.protobuf.FieldOptions options = 8;DescriptorProtos.FieldDescriptorProto.BuildersetProto3Optional(boolean value)If true, this is a proto3 "optional".DescriptorProtos.FieldDescriptorProto.BuildersetType(DescriptorProtos.FieldDescriptorProto.Type value)If type_name is set, this need not be set.DescriptorProtos.FieldDescriptorProto.BuildersetTypeName(java.lang.String value)For message and enum types, this is the name of the type.DescriptorProtos.FieldDescriptorProto.BuildersetTypeNameBytes(ByteString value)For message and enum types, this is the name of the type.-
Methods inherited from class com.google.protobuf.GeneratedMessageLite.Builder
build, buildPartial, clear, clone, copyOnWrite, copyOnWriteInternal, getDefaultInstanceForType, internalMergeFrom, isInitialized, mergeFrom, mergeFrom, mergeFrom, mergeFrom
-
Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder
getDefaultInstanceForType, isInitialized
-
-
-
-
Method Detail
-
hasName
public boolean hasName()
optional string name = 1;- Specified by:
hasNamein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the name field is set.
-
getName
public java.lang.String getName()
optional string name = 1;- Specified by:
getNamein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The name.
-
getNameBytes
public ByteString getNameBytes()
optional string name = 1;- Specified by:
getNameBytesin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The bytes for name.
-
setName
public DescriptorProtos.FieldDescriptorProto.Builder setName(java.lang.String value)
optional string name = 1;- Parameters:
value- The name to set.- Returns:
- This builder for chaining.
-
clearName
public DescriptorProtos.FieldDescriptorProto.Builder clearName()
optional string name = 1;- Returns:
- This builder for chaining.
-
setNameBytes
public DescriptorProtos.FieldDescriptorProto.Builder setNameBytes(ByteString value)
optional string name = 1;- Parameters:
value- The bytes for name to set.- Returns:
- This builder for chaining.
-
hasNumber
public boolean hasNumber()
optional int32 number = 3;- Specified by:
hasNumberin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the number field is set.
-
getNumber
public int getNumber()
optional int32 number = 3;- Specified by:
getNumberin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The number.
-
setNumber
public DescriptorProtos.FieldDescriptorProto.Builder setNumber(int value)
optional int32 number = 3;- Parameters:
value- The number to set.- Returns:
- This builder for chaining.
-
clearNumber
public DescriptorProtos.FieldDescriptorProto.Builder clearNumber()
optional int32 number = 3;- Returns:
- This builder for chaining.
-
hasLabel
public boolean hasLabel()
optional .google.protobuf.FieldDescriptorProto.Label label = 4;- Specified by:
hasLabelin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the label field is set.
-
getLabel
public DescriptorProtos.FieldDescriptorProto.Label getLabel()
optional .google.protobuf.FieldDescriptorProto.Label label = 4;- Specified by:
getLabelin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The label.
-
setLabel
public DescriptorProtos.FieldDescriptorProto.Builder setLabel(DescriptorProtos.FieldDescriptorProto.Label value)
optional .google.protobuf.FieldDescriptorProto.Label label = 4;- Parameters:
value- The enum numeric value on the wire for label to set.- Returns:
- This builder for chaining.
-
clearLabel
public DescriptorProtos.FieldDescriptorProto.Builder clearLabel()
optional .google.protobuf.FieldDescriptorProto.Label label = 4;- Returns:
- This builder for chaining.
-
hasType
public boolean hasType()
If type_name is set, this need not be set. If both this and type_name are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
optional .google.protobuf.FieldDescriptorProto.Type type = 5;- Specified by:
hasTypein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the type field is set.
-
getType
public DescriptorProtos.FieldDescriptorProto.Type getType()
If type_name is set, this need not be set. If both this and type_name are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
optional .google.protobuf.FieldDescriptorProto.Type type = 5;- Specified by:
getTypein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The type.
-
setType
public DescriptorProtos.FieldDescriptorProto.Builder setType(DescriptorProtos.FieldDescriptorProto.Type value)
If type_name is set, this need not be set. If both this and type_name are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
optional .google.protobuf.FieldDescriptorProto.Type type = 5;- Parameters:
value- The enum numeric value on the wire for type to set.- Returns:
- This builder for chaining.
-
clearType
public DescriptorProtos.FieldDescriptorProto.Builder clearType()
If type_name is set, this need not be set. If both this and type_name are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
optional .google.protobuf.FieldDescriptorProto.Type type = 5;- Returns:
- This builder for chaining.
-
hasTypeName
public boolean hasTypeName()
For message and enum types, this is the name of the type. If the name starts with a '.', it is fully-qualified. Otherwise, C++-like scoping rules are used to find the type (i.e. first the nested types within this message are searched, then within the parent, on up to the root namespace).
optional string type_name = 6;- Specified by:
hasTypeNamein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the typeName field is set.
-
getTypeName
public java.lang.String getTypeName()
For message and enum types, this is the name of the type. If the name starts with a '.', it is fully-qualified. Otherwise, C++-like scoping rules are used to find the type (i.e. first the nested types within this message are searched, then within the parent, on up to the root namespace).
optional string type_name = 6;- Specified by:
getTypeNamein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The typeName.
-
getTypeNameBytes
public ByteString getTypeNameBytes()
For message and enum types, this is the name of the type. If the name starts with a '.', it is fully-qualified. Otherwise, C++-like scoping rules are used to find the type (i.e. first the nested types within this message are searched, then within the parent, on up to the root namespace).
optional string type_name = 6;- Specified by:
getTypeNameBytesin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The bytes for typeName.
-
setTypeName
public DescriptorProtos.FieldDescriptorProto.Builder setTypeName(java.lang.String value)
For message and enum types, this is the name of the type. If the name starts with a '.', it is fully-qualified. Otherwise, C++-like scoping rules are used to find the type (i.e. first the nested types within this message are searched, then within the parent, on up to the root namespace).
optional string type_name = 6;- Parameters:
value- The typeName to set.- Returns:
- This builder for chaining.
-
clearTypeName
public DescriptorProtos.FieldDescriptorProto.Builder clearTypeName()
For message and enum types, this is the name of the type. If the name starts with a '.', it is fully-qualified. Otherwise, C++-like scoping rules are used to find the type (i.e. first the nested types within this message are searched, then within the parent, on up to the root namespace).
optional string type_name = 6;- Returns:
- This builder for chaining.
-
setTypeNameBytes
public DescriptorProtos.FieldDescriptorProto.Builder setTypeNameBytes(ByteString value)
For message and enum types, this is the name of the type. If the name starts with a '.', it is fully-qualified. Otherwise, C++-like scoping rules are used to find the type (i.e. first the nested types within this message are searched, then within the parent, on up to the root namespace).
optional string type_name = 6;- Parameters:
value- The bytes for typeName to set.- Returns:
- This builder for chaining.
-
hasExtendee
public boolean hasExtendee()
For extensions, this is the name of the type being extended. It is resolved in the same manner as type_name.
optional string extendee = 2;- Specified by:
hasExtendeein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the extendee field is set.
-
getExtendee
public java.lang.String getExtendee()
For extensions, this is the name of the type being extended. It is resolved in the same manner as type_name.
optional string extendee = 2;- Specified by:
getExtendeein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The extendee.
-
getExtendeeBytes
public ByteString getExtendeeBytes()
For extensions, this is the name of the type being extended. It is resolved in the same manner as type_name.
optional string extendee = 2;- Specified by:
getExtendeeBytesin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The bytes for extendee.
-
setExtendee
public DescriptorProtos.FieldDescriptorProto.Builder setExtendee(java.lang.String value)
For extensions, this is the name of the type being extended. It is resolved in the same manner as type_name.
optional string extendee = 2;- Parameters:
value- The extendee to set.- Returns:
- This builder for chaining.
-
clearExtendee
public DescriptorProtos.FieldDescriptorProto.Builder clearExtendee()
For extensions, this is the name of the type being extended. It is resolved in the same manner as type_name.
optional string extendee = 2;- Returns:
- This builder for chaining.
-
setExtendeeBytes
public DescriptorProtos.FieldDescriptorProto.Builder setExtendeeBytes(ByteString value)
For extensions, this is the name of the type being extended. It is resolved in the same manner as type_name.
optional string extendee = 2;- Parameters:
value- The bytes for extendee to set.- Returns:
- This builder for chaining.
-
hasDefaultValue
public boolean hasDefaultValue()
For numeric types, contains the original text representation of the value. For booleans, "true" or "false". For strings, contains the default text contents (not escaped in any way). For bytes, contains the C escaped value. All bytes >= 128 are escaped.
optional string default_value = 7;- Specified by:
hasDefaultValuein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the defaultValue field is set.
-
getDefaultValue
public java.lang.String getDefaultValue()
For numeric types, contains the original text representation of the value. For booleans, "true" or "false". For strings, contains the default text contents (not escaped in any way). For bytes, contains the C escaped value. All bytes >= 128 are escaped.
optional string default_value = 7;- Specified by:
getDefaultValuein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The defaultValue.
-
getDefaultValueBytes
public ByteString getDefaultValueBytes()
For numeric types, contains the original text representation of the value. For booleans, "true" or "false". For strings, contains the default text contents (not escaped in any way). For bytes, contains the C escaped value. All bytes >= 128 are escaped.
optional string default_value = 7;- Specified by:
getDefaultValueBytesin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The bytes for defaultValue.
-
setDefaultValue
public DescriptorProtos.FieldDescriptorProto.Builder setDefaultValue(java.lang.String value)
For numeric types, contains the original text representation of the value. For booleans, "true" or "false". For strings, contains the default text contents (not escaped in any way). For bytes, contains the C escaped value. All bytes >= 128 are escaped.
optional string default_value = 7;- Parameters:
value- The defaultValue to set.- Returns:
- This builder for chaining.
-
clearDefaultValue
public DescriptorProtos.FieldDescriptorProto.Builder clearDefaultValue()
For numeric types, contains the original text representation of the value. For booleans, "true" or "false". For strings, contains the default text contents (not escaped in any way). For bytes, contains the C escaped value. All bytes >= 128 are escaped.
optional string default_value = 7;- Returns:
- This builder for chaining.
-
setDefaultValueBytes
public DescriptorProtos.FieldDescriptorProto.Builder setDefaultValueBytes(ByteString value)
For numeric types, contains the original text representation of the value. For booleans, "true" or "false". For strings, contains the default text contents (not escaped in any way). For bytes, contains the C escaped value. All bytes >= 128 are escaped.
optional string default_value = 7;- Parameters:
value- The bytes for defaultValue to set.- Returns:
- This builder for chaining.
-
hasOneofIndex
public boolean hasOneofIndex()
If set, gives the index of a oneof in the containing type's oneof_decl list. This field is a member of that oneof.
optional int32 oneof_index = 9;- Specified by:
hasOneofIndexin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the oneofIndex field is set.
-
getOneofIndex
public int getOneofIndex()
If set, gives the index of a oneof in the containing type's oneof_decl list. This field is a member of that oneof.
optional int32 oneof_index = 9;- Specified by:
getOneofIndexin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The oneofIndex.
-
setOneofIndex
public DescriptorProtos.FieldDescriptorProto.Builder setOneofIndex(int value)
If set, gives the index of a oneof in the containing type's oneof_decl list. This field is a member of that oneof.
optional int32 oneof_index = 9;- Parameters:
value- The oneofIndex to set.- Returns:
- This builder for chaining.
-
clearOneofIndex
public DescriptorProtos.FieldDescriptorProto.Builder clearOneofIndex()
If set, gives the index of a oneof in the containing type's oneof_decl list. This field is a member of that oneof.
optional int32 oneof_index = 9;- Returns:
- This builder for chaining.
-
hasJsonName
public boolean hasJsonName()
JSON name of this field. The value is set by protocol compiler. If the user has set a "json_name" option on this field, that option's value will be used. Otherwise, it's deduced from the field's name by converting it to camelCase.
optional string json_name = 10;- Specified by:
hasJsonNamein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the jsonName field is set.
-
getJsonName
public java.lang.String getJsonName()
JSON name of this field. The value is set by protocol compiler. If the user has set a "json_name" option on this field, that option's value will be used. Otherwise, it's deduced from the field's name by converting it to camelCase.
optional string json_name = 10;- Specified by:
getJsonNamein interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The jsonName.
-
getJsonNameBytes
public ByteString getJsonNameBytes()
JSON name of this field. The value is set by protocol compiler. If the user has set a "json_name" option on this field, that option's value will be used. Otherwise, it's deduced from the field's name by converting it to camelCase.
optional string json_name = 10;- Specified by:
getJsonNameBytesin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The bytes for jsonName.
-
setJsonName
public DescriptorProtos.FieldDescriptorProto.Builder setJsonName(java.lang.String value)
JSON name of this field. The value is set by protocol compiler. If the user has set a "json_name" option on this field, that option's value will be used. Otherwise, it's deduced from the field's name by converting it to camelCase.
optional string json_name = 10;- Parameters:
value- The jsonName to set.- Returns:
- This builder for chaining.
-
clearJsonName
public DescriptorProtos.FieldDescriptorProto.Builder clearJsonName()
JSON name of this field. The value is set by protocol compiler. If the user has set a "json_name" option on this field, that option's value will be used. Otherwise, it's deduced from the field's name by converting it to camelCase.
optional string json_name = 10;- Returns:
- This builder for chaining.
-
setJsonNameBytes
public DescriptorProtos.FieldDescriptorProto.Builder setJsonNameBytes(ByteString value)
JSON name of this field. The value is set by protocol compiler. If the user has set a "json_name" option on this field, that option's value will be used. Otherwise, it's deduced from the field's name by converting it to camelCase.
optional string json_name = 10;- Parameters:
value- The bytes for jsonName to set.- Returns:
- This builder for chaining.
-
hasOptions
public boolean hasOptions()
optional .google.protobuf.FieldOptions options = 8;- Specified by:
hasOptionsin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the options field is set.
-
getOptions
public DescriptorProtos.FieldOptions getOptions()
optional .google.protobuf.FieldOptions options = 8;- Specified by:
getOptionsin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The options.
-
setOptions
public DescriptorProtos.FieldDescriptorProto.Builder setOptions(DescriptorProtos.FieldOptions value)
optional .google.protobuf.FieldOptions options = 8;
-
setOptions
public DescriptorProtos.FieldDescriptorProto.Builder setOptions(DescriptorProtos.FieldOptions.Builder builderForValue)
optional .google.protobuf.FieldOptions options = 8;
-
mergeOptions
public DescriptorProtos.FieldDescriptorProto.Builder mergeOptions(DescriptorProtos.FieldOptions value)
optional .google.protobuf.FieldOptions options = 8;
-
clearOptions
public DescriptorProtos.FieldDescriptorProto.Builder clearOptions()
optional .google.protobuf.FieldOptions options = 8;
-
hasProto3Optional
public boolean hasProto3Optional()
If true, this is a proto3 "optional". When a proto3 field is optional, it tracks presence regardless of field type. When proto3_optional is true, this field must belong to a oneof to signal to old proto3 clients that presence is tracked for this field. This oneof is known as a "synthetic" oneof, and this field must be its sole member (each proto3 optional field gets its own synthetic oneof). Synthetic oneofs exist in the descriptor only, and do not generate any API. Synthetic oneofs must be ordered after all "real" oneofs. For message fields, proto3_optional doesn't create any semantic change, since non-repeated message fields always track presence. However it still indicates the semantic detail of whether the user wrote "optional" or not. This can be useful for round-tripping the .proto file. For consistency we give message fields a synthetic oneof also, even though it is not required to track presence. This is especially important because the parser can't tell if a field is a message or an enum, so it must always create a synthetic oneof. Proto2 optional fields do not set this flag, because they already indicate optional with `LABEL_OPTIONAL`.
optional bool proto3_optional = 17;- Specified by:
hasProto3Optionalin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- Whether the proto3Optional field is set.
-
getProto3Optional
public boolean getProto3Optional()
If true, this is a proto3 "optional". When a proto3 field is optional, it tracks presence regardless of field type. When proto3_optional is true, this field must belong to a oneof to signal to old proto3 clients that presence is tracked for this field. This oneof is known as a "synthetic" oneof, and this field must be its sole member (each proto3 optional field gets its own synthetic oneof). Synthetic oneofs exist in the descriptor only, and do not generate any API. Synthetic oneofs must be ordered after all "real" oneofs. For message fields, proto3_optional doesn't create any semantic change, since non-repeated message fields always track presence. However it still indicates the semantic detail of whether the user wrote "optional" or not. This can be useful for round-tripping the .proto file. For consistency we give message fields a synthetic oneof also, even though it is not required to track presence. This is especially important because the parser can't tell if a field is a message or an enum, so it must always create a synthetic oneof. Proto2 optional fields do not set this flag, because they already indicate optional with `LABEL_OPTIONAL`.
optional bool proto3_optional = 17;- Specified by:
getProto3Optionalin interfaceDescriptorProtos.FieldDescriptorProtoOrBuilder- Returns:
- The proto3Optional.
-
setProto3Optional
public DescriptorProtos.FieldDescriptorProto.Builder setProto3Optional(boolean value)
If true, this is a proto3 "optional". When a proto3 field is optional, it tracks presence regardless of field type. When proto3_optional is true, this field must belong to a oneof to signal to old proto3 clients that presence is tracked for this field. This oneof is known as a "synthetic" oneof, and this field must be its sole member (each proto3 optional field gets its own synthetic oneof). Synthetic oneofs exist in the descriptor only, and do not generate any API. Synthetic oneofs must be ordered after all "real" oneofs. For message fields, proto3_optional doesn't create any semantic change, since non-repeated message fields always track presence. However it still indicates the semantic detail of whether the user wrote "optional" or not. This can be useful for round-tripping the .proto file. For consistency we give message fields a synthetic oneof also, even though it is not required to track presence. This is especially important because the parser can't tell if a field is a message or an enum, so it must always create a synthetic oneof. Proto2 optional fields do not set this flag, because they already indicate optional with `LABEL_OPTIONAL`.
optional bool proto3_optional = 17;- Parameters:
value- The proto3Optional to set.- Returns:
- This builder for chaining.
-
clearProto3Optional
public DescriptorProtos.FieldDescriptorProto.Builder clearProto3Optional()
If true, this is a proto3 "optional". When a proto3 field is optional, it tracks presence regardless of field type. When proto3_optional is true, this field must belong to a oneof to signal to old proto3 clients that presence is tracked for this field. This oneof is known as a "synthetic" oneof, and this field must be its sole member (each proto3 optional field gets its own synthetic oneof). Synthetic oneofs exist in the descriptor only, and do not generate any API. Synthetic oneofs must be ordered after all "real" oneofs. For message fields, proto3_optional doesn't create any semantic change, since non-repeated message fields always track presence. However it still indicates the semantic detail of whether the user wrote "optional" or not. This can be useful for round-tripping the .proto file. For consistency we give message fields a synthetic oneof also, even though it is not required to track presence. This is especially important because the parser can't tell if a field is a message or an enum, so it must always create a synthetic oneof. Proto2 optional fields do not set this flag, because they already indicate optional with `LABEL_OPTIONAL`.
optional bool proto3_optional = 17;- Returns:
- This builder for chaining.
-
-