Package com.google.protobuf

## Class DescriptorProtos.FieldDescriptorProto

- java.lang.Object
- - com.google.protobuf.AbstractMessageLite
  - - com.google.protobuf.AbstractMessage
    - - com.google.protobuf.GeneratedMessage
      - - com.google.protobuf.DescriptorProtos.FieldDescriptorProto

All Implemented Interfaces:
  `DescriptorProtos.FieldDescriptorProtoOrBuilder`, `Message`, `MessageLite`, `MessageLiteOrBuilder`, `MessageOrBuilder`, `java.io.Serializable`

Enclosing class:
  DescriptorProtos

    public static final class DescriptorProtos.FieldDescriptorProto
    extends GeneratedMessage
    implements DescriptorProtos.FieldDescriptorProtoOrBuilder

Protobuf type `google.protobuf.FieldDescriptorProto`

     Describes a field within a message.

See Also:
  Serialized Form

### Nested Class Summary

Nested Classes
`static class` `DescriptorProtos.FieldDescriptorProto.Builder` Protobuf type `google.protobuf.FieldDescriptorProto`
`static class` `DescriptorProtos.FieldDescriptorProto.Label` Protobuf enum `google.protobuf.FieldDescriptorProto.Label`
`static class` `DescriptorProtos.FieldDescriptorProto.Type` Protobuf enum `google.protobuf.FieldDescriptorProto.Type`

### Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage

`GeneratedMessage.BuilderParent, GeneratedMessage.ExtendableBuilder<MessageType extends GeneratedMessage.ExtendableMessage,​BuilderType extends GeneratedMessage.ExtendableBuilder>, GeneratedMessage.ExtendableMessage<MessageType extends GeneratedMessage.ExtendableMessage>, GeneratedMessage.ExtendableMessageOrBuilder<MessageType extends GeneratedMessage.ExtendableMessage>, GeneratedMessage.FieldAccessorTable, GeneratedMessage.GeneratedExtension<ContainingType extends Message,​Type>`

### Field Summary

Fields
`static int` `DEFAULT_VALUE_FIELD_NUMBER`
`static int` `EXTENDEE_FIELD_NUMBER`
`static int` `LABEL_FIELD_NUMBER`
`static int` `NAME_FIELD_NUMBER`
`static int` `NUMBER_FIELD_NUMBER`
`static int` `ONEOF_INDEX_FIELD_NUMBER`
`static int` `OPTIONS_FIELD_NUMBER`
`static Parser<DescriptorProtos.FieldDescriptorProto>` `PARSER`
`static int` `TYPE_FIELD_NUMBER`
`static int` `TYPE_NAME_FIELD_NUMBER`

### Fields inherited from class com.google.protobuf.GeneratedMessage

`alwaysUseFieldBuilders`

### Fields inherited from class com.google.protobuf.AbstractMessageLite

`memoizedHashCode`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static DescriptorProtos.FieldDescriptorProto` `getDefaultInstance()`
`DescriptorProtos.FieldDescriptorProto` `getDefaultInstanceForType()` Get an instance of the type with no fields set.
`java.lang.String` `getDefaultValue()` `optional string default_value = 7;`
`ByteString` `getDefaultValueBytes()` `optional string default_value = 7;`
`static Descriptors.Descriptor` `getDescriptor()`
`java.lang.String` `getExtendee()` `optional string extendee = 2;`
`ByteString` `getExtendeeBytes()` `optional string extendee = 2;`
`DescriptorProtos.FieldDescriptorProto.Label` `getLabel()` `optional .google.protobuf.FieldDescriptorProto.Label label = 4;`
`java.lang.String` `getName()` `optional string name = 1;`
`ByteString` `getNameBytes()` `optional string name = 1;`
`int` `getNumber()` `optional int32 number = 3;`
`int` `getOneofIndex()` `optional int32 oneof_index = 9;`
`DescriptorProtos.FieldOptions` `getOptions()` `optional .google.protobuf.FieldOptions options = 8;`
`DescriptorProtos.FieldOptionsOrBuilder` `getOptionsOrBuilder()` `optional .google.protobuf.FieldOptions options = 8;`
`Parser<DescriptorProtos.FieldDescriptorProto>` `getParserForType()` Gets the parser for a message of the same type as this message.
`int` `getSerializedSize()` Get the number of bytes required to encode this message.
`DescriptorProtos.FieldDescriptorProto.Type` `getType()` `optional .google.protobuf.FieldDescriptorProto.Type type = 5;`
`java.lang.String` `getTypeName()` `optional string type_name = 6;`
`ByteString` `getTypeNameBytes()` `optional string type_name = 6;`
`UnknownFieldSet` `getUnknownFields()` Get the `UnknownFieldSet` for this message.
`boolean` `hasDefaultValue()` `optional string default_value = 7;`
`boolean` `hasExtendee()` `optional string extendee = 2;`
`boolean` `hasLabel()` `optional .google.protobuf.FieldDescriptorProto.Label label = 4;`
`boolean` `hasName()` `optional string name = 1;`
`boolean` `hasNumber()` `optional int32 number = 3;`
`boolean` `hasOneofIndex()` `optional int32 oneof_index = 9;`
`boolean` `hasOptions()` `optional .google.protobuf.FieldOptions options = 8;`
`boolean` `hasType()` `optional .google.protobuf.FieldDescriptorProto.Type type = 5;`
`boolean` `hasTypeName()` `optional string type_name = 6;`
`protected GeneratedMessage.FieldAccessorTable` `internalGetFieldAccessorTable()` Get the FieldAccessorTable for this type.
`boolean` `isInitialized()` Returns true if all required fields in the message and all embedded messages are set, false otherwise.
`static DescriptorProtos.FieldDescriptorProto.Builder` `newBuilder()`
`static DescriptorProtos.FieldDescriptorProto.Builder` `newBuilder​(DescriptorProtos.FieldDescriptorProto prototype)`
`DescriptorProtos.FieldDescriptorProto.Builder` `newBuilderForType()` Constructs a new builder for a message of the same type as this message.
`protected DescriptorProtos.FieldDescriptorProto.Builder` `newBuilderForType​(GeneratedMessage.BuilderParent parent)`
`static DescriptorProtos.FieldDescriptorProto` `parseDelimitedFrom​(java.io.InputStream input)`
`static DescriptorProtos.FieldDescriptorProto` `parseDelimitedFrom​(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)`
`static DescriptorProtos.FieldDescriptorProto` `parseFrom​(byte[] data)`
`static DescriptorProtos.FieldDescriptorProto` `parseFrom​(byte[] data, ExtensionRegistryLite extensionRegistry)`
`static DescriptorProtos.FieldDescriptorProto` `parseFrom​(ByteString data)`
`static DescriptorProtos.FieldDescriptorProto` `parseFrom​(ByteString data, ExtensionRegistryLite extensionRegistry)`
`static DescriptorProtos.FieldDescriptorProto` `parseFrom​(CodedInputStream input)`
`static DescriptorProtos.FieldDescriptorProto` `parseFrom​(CodedInputStream input, ExtensionRegistryLite extensionRegistry)`
`static DescriptorProtos.FieldDescriptorProto` `parseFrom​(java.io.InputStream input)`
`static DescriptorProtos.FieldDescriptorProto` `parseFrom​(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)`
`DescriptorProtos.FieldDescriptorProto.Builder` `toBuilder()` Constructs a builder initialized with the current message.
`protected java.lang.Object` `writeReplace()` Replaces this object in the output stream with a serialized form.
`void` `writeTo​(CodedOutputStream output)` Serializes the message and writes it to `output`.

### Methods inherited from class com.google.protobuf.GeneratedMessage

`getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, makeExtensionsImmutable, newFileScopedGeneratedExtension, newFileScopedGeneratedExtension, newMessageScopedGeneratedExtension, newMessageScopedGeneratedExtension, parseUnknownField`

### Methods inherited from class com.google.protobuf.AbstractMessage

`equals, findInitializationErrors, getInitializationErrorString, hashCode, hashFields, toString`

### Methods inherited from class com.google.protobuf.AbstractMessageLite

`checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface com.google.protobuf.MessageLite

`toByteArray, toByteString, writeDelimitedTo, writeTo`

### Methods inherited from interface com.google.protobuf.MessageOrBuilder

`findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof`

### Field Detail

#### PARSER

    public static Parser<DescriptorProtos.FieldDescriptorProto> PARSER

#### NAME_FIELD_NUMBER

    public static final int NAME_FIELD_NUMBER

See Also:
  Constant Field Values

#### NUMBER_FIELD_NUMBER

    public static final int NUMBER_FIELD_NUMBER

See Also:
  Constant Field Values

#### LABEL_FIELD_NUMBER

    public static final int LABEL_FIELD_NUMBER

See Also:
  Constant Field Values

#### TYPE_FIELD_NUMBER

    public static final int TYPE_FIELD_NUMBER

See Also:
  Constant Field Values

#### TYPE_NAME_FIELD_NUMBER

    public static final int TYPE_NAME_FIELD_NUMBER

See Also:
  Constant Field Values

#### EXTENDEE_FIELD_NUMBER

    public static final int EXTENDEE_FIELD_NUMBER

See Also:
  Constant Field Values

#### DEFAULT_VALUE_FIELD_NUMBER

    public static final int DEFAULT_VALUE_FIELD_NUMBER

See Also:
  Constant Field Values

#### ONEOF_INDEX_FIELD_NUMBER

    public static final int ONEOF_INDEX_FIELD_NUMBER

See Also:
  Constant Field Values

#### OPTIONS_FIELD_NUMBER

    public static final int OPTIONS_FIELD_NUMBER

See Also:
  Constant Field Values

### Method Detail

#### getDefaultInstance

    public static DescriptorProtos.FieldDescriptorProto getDefaultInstance()

#### getDefaultInstanceForType

    public DescriptorProtos.FieldDescriptorProto getDefaultInstanceForType()

Description copied from interface: `MessageLiteOrBuilder`
Get an instance of the type with no fields set. Because no fields are set, all getters for singular fields will return default values and repeated fields will appear empty. This may or may not be a singleton. This differs from the `getDefaultInstance()` method of generated message classes in that this method is an abstract method of the `MessageLite` interface whereas `getDefaultInstance()` is a static method of a specific class. They return the same thing.

Specified by:
  `getDefaultInstanceForType` in interface `MessageLiteOrBuilder`
Specified by:
  `getDefaultInstanceForType` in interface `MessageOrBuilder`

#### getUnknownFields

    public final UnknownFieldSet getUnknownFields()

Description copied from interface: `MessageOrBuilder`
Get the `UnknownFieldSet` for this message.

Specified by:
  `getUnknownFields` in interface `MessageOrBuilder`
Overrides:
  `getUnknownFields` in class `GeneratedMessage`

#### getDescriptor

    public static final Descriptors.Descriptor getDescriptor()

#### internalGetFieldAccessorTable

    protected GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()

Description copied from class: `GeneratedMessage`
Get the FieldAccessorTable for this type. We can't have the message class pass this in to the constructor because of bootstrapping trouble with DescriptorProtos.

Specified by:
  `internalGetFieldAccessorTable` in class `GeneratedMessage`

#### getParserForType

    public Parser<DescriptorProtos.FieldDescriptorProto> getParserForType()

Description copied from interface: `MessageLite`
Gets the parser for a message of the same type as this message.

Specified by:
  `getParserForType` in interface `Message`
Specified by:
  `getParserForType` in interface `MessageLite`
Overrides:
  `getParserForType` in class `GeneratedMessage`

#### hasName

    public boolean hasName()

`optional string name = 1;`

Specified by:
  `hasName` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getName

    public java.lang.String getName()

`optional string name = 1;`

Specified by:
  `getName` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getNameBytes

    public ByteString getNameBytes()

`optional string name = 1;`

Specified by:
  `getNameBytes` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### hasNumber

    public boolean hasNumber()

`optional int32 number = 3;`

Specified by:
  `hasNumber` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getNumber

    public int getNumber()

`optional int32 number = 3;`

Specified by:
  `getNumber` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### hasLabel

    public boolean hasLabel()

`optional .google.protobuf.FieldDescriptorProto.Label label = 4;`

Specified by:
  `hasLabel` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getLabel

    public DescriptorProtos.FieldDescriptorProto.Label getLabel()

`optional .google.protobuf.FieldDescriptorProto.Label label = 4;`

Specified by:
  `getLabel` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### hasType

    public boolean hasType()

`optional .google.protobuf.FieldDescriptorProto.Type type = 5;`

     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.

Specified by:
  `hasType` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getType

    public DescriptorProtos.FieldDescriptorProto.Type getType()

`optional .google.protobuf.FieldDescriptorProto.Type type = 5;`

     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.

Specified by:
  `getType` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### hasTypeName

    public boolean hasTypeName()

`optional string type_name = 6;`

     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).

Specified by:
  `hasTypeName` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getTypeName

    public java.lang.String getTypeName()

`optional string type_name = 6;`

     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).

Specified by:
  `getTypeName` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getTypeNameBytes

    public ByteString getTypeNameBytes()

`optional string type_name = 6;`

     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).

Specified by:
  `getTypeNameBytes` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### hasExtendee

    public boolean hasExtendee()

`optional string extendee = 2;`

     For extensions, this is the name of the type being extended.  It is
     resolved in the same manner as type_name.

Specified by:
  `hasExtendee` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getExtendee

    public java.lang.String getExtendee()

`optional string extendee = 2;`

     For extensions, this is the name of the type being extended.  It is
     resolved in the same manner as type_name.

Specified by:
  `getExtendee` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getExtendeeBytes

    public ByteString getExtendeeBytes()

`optional string extendee = 2;`

     For extensions, this is the name of the type being extended.  It is
     resolved in the same manner as type_name.

Specified by:
  `getExtendeeBytes` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### hasDefaultValue

    public boolean hasDefaultValue()

`optional string default_value = 7;`

     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.
     TODO(kenton):  Base-64 encode?

Specified by:
  `hasDefaultValue` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getDefaultValue

    public java.lang.String getDefaultValue()

`optional string default_value = 7;`

     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.
     TODO(kenton):  Base-64 encode?

Specified by:
  `getDefaultValue` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getDefaultValueBytes

    public ByteString getDefaultValueBytes()

`optional string default_value = 7;`

     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.
     TODO(kenton):  Base-64 encode?

Specified by:
  `getDefaultValueBytes` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### hasOneofIndex

    public boolean hasOneofIndex()

`optional int32 oneof_index = 9;`

     If set, gives the index of a oneof in the containing type's oneof_decl
     list.  This field is a member of that oneof.  Extensions of a oneof should
     not set this since the oneof to which they belong will be inferred based
     on the extension range containing the extension's field number.

Specified by:
  `hasOneofIndex` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getOneofIndex

    public int getOneofIndex()

`optional int32 oneof_index = 9;`

     If set, gives the index of a oneof in the containing type's oneof_decl
     list.  This field is a member of that oneof.  Extensions of a oneof should
     not set this since the oneof to which they belong will be inferred based
     on the extension range containing the extension's field number.

Specified by:
  `getOneofIndex` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### hasOptions

    public boolean hasOptions()

`optional .google.protobuf.FieldOptions options = 8;`

Specified by:
  `hasOptions` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getOptions

    public DescriptorProtos.FieldOptions getOptions()

`optional .google.protobuf.FieldOptions options = 8;`

Specified by:
  `getOptions` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### getOptionsOrBuilder

    public DescriptorProtos.FieldOptionsOrBuilder getOptionsOrBuilder()

`optional .google.protobuf.FieldOptions options = 8;`

Specified by:
  `getOptionsOrBuilder` in interface `DescriptorProtos.FieldDescriptorProtoOrBuilder`

#### isInitialized

    public final boolean isInitialized()

Description copied from interface: `MessageLiteOrBuilder`
Returns true if all required fields in the message and all embedded messages are set, false otherwise.

See also: `MessageOrBuilder.getInitializationErrorString()`

Specified by:
  `isInitialized` in interface `MessageLiteOrBuilder`
Overrides:
  `isInitialized` in class `GeneratedMessage`

#### writeTo

    public void writeTo​(CodedOutputStream output)
                 throws java.io.IOException

Description copied from interface: `MessageLite`
Serializes the message and writes it to `output`. This does not flush or close the stream.

Specified by:
  `writeTo` in interface `MessageLite`
Overrides:
  `writeTo` in class `AbstractMessage`
Throws:
  `java.io.IOException`

#### getSerializedSize

    public int getSerializedSize()

Description copied from interface: `MessageLite`
Get the number of bytes required to encode this message. The result is only computed on the first call and memoized after that.

Specified by:
  `getSerializedSize` in interface `MessageLite`
Overrides:
  `getSerializedSize` in class `AbstractMessage`

#### writeReplace

    protected java.lang.Object writeReplace()
                                     throws java.io.ObjectStreamException

Description copied from class: `GeneratedMessage`
Replaces this object in the output stream with a serialized form. Part of Java's serialization magic. Generated sub-classes must override this method by calling `return super.writeReplace();`

Overrides:
  `writeReplace` in class `GeneratedMessage`
Returns:
  a SerializedForm of this message
Throws:
  `java.io.ObjectStreamException`

#### parseFrom

    public static DescriptorProtos.FieldDescriptorProto parseFrom​(ByteString data)
                                                           throws InvalidProtocolBufferException

Throws:
  `InvalidProtocolBufferException`

#### parseFrom

    public static DescriptorProtos.FieldDescriptorProto parseFrom​(ByteString data,
                                                                  ExtensionRegistryLite extensionRegistry)
                                                           throws InvalidProtocolBufferException

Throws:
  `InvalidProtocolBufferException`

#### parseFrom

    public static DescriptorProtos.FieldDescriptorProto parseFrom​(byte[] data)
                                                           throws InvalidProtocolBufferException

Throws:
  `InvalidProtocolBufferException`

#### parseFrom

    public static DescriptorProtos.FieldDescriptorProto parseFrom​(byte[] data,
                                                                  ExtensionRegistryLite extensionRegistry)
                                                           throws InvalidProtocolBufferException

Throws:
  `InvalidProtocolBufferException`

#### parseFrom

    public static DescriptorProtos.FieldDescriptorProto parseFrom​(java.io.InputStream input)
                                                           throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseFrom

    public static DescriptorProtos.FieldDescriptorProto parseFrom​(java.io.InputStream input,
                                                                  ExtensionRegistryLite extensionRegistry)
                                                           throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseDelimitedFrom

    public static DescriptorProtos.FieldDescriptorProto parseDelimitedFrom​(java.io.InputStream input)
                                                                    throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseDelimitedFrom

    public static DescriptorProtos.FieldDescriptorProto parseDelimitedFrom​(java.io.InputStream input,
                                                                           ExtensionRegistryLite extensionRegistry)
                                                                    throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseFrom

    public static DescriptorProtos.FieldDescriptorProto parseFrom​(CodedInputStream input)
                                                           throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseFrom

    public static DescriptorProtos.FieldDescriptorProto parseFrom​(CodedInputStream input,
                                                                  ExtensionRegistryLite extensionRegistry)
                                                           throws java.io.IOException

Throws:
  `java.io.IOException`

#### newBuilder

    public static DescriptorProtos.FieldDescriptorProto.Builder newBuilder()

#### newBuilderForType

    public DescriptorProtos.FieldDescriptorProto.Builder newBuilderForType()

Description copied from interface: `MessageLite`
Constructs a new builder for a message of the same type as this message.

Specified by:
  `newBuilderForType` in interface `Message`
Specified by:
  `newBuilderForType` in interface `MessageLite`

#### newBuilder

    public static DescriptorProtos.FieldDescriptorProto.Builder newBuilder​(DescriptorProtos.FieldDescriptorProto prototype)

#### toBuilder

    public DescriptorProtos.FieldDescriptorProto.Builder toBuilder()

Description copied from interface: `MessageLite`
Constructs a builder initialized with the current message. Use this to derive a new message from the current one.

Specified by:
  `toBuilder` in interface `Message`
Specified by:
  `toBuilder` in interface `MessageLite`

#### newBuilderForType

    protected DescriptorProtos.FieldDescriptorProto.Builder newBuilderForType​(GeneratedMessage.BuilderParent parent)

Specified by:
  `newBuilderForType` in class `GeneratedMessage`