com.google.protobuf

## Class DescriptorProtos.FileOptions

- java.lang.Object
- - com.google.protobuf.AbstractMessageLite
  - - com.google.protobuf.AbstractMessage
    - - com.google.protobuf.GeneratedMessageV3
      - - com.google.protobuf.GeneratedMessageV3.ExtendableMessage<DescriptorProtos.FileOptions>
        - - com.google.protobuf.DescriptorProtos.FileOptions

- All Implemented Interfaces:
    DescriptorProtos.FileOptionsOrBuilder, GeneratedMessageV3.ExtendableMessageOrBuilder<DescriptorProtos.FileOptions>, Message, MessageLite, MessageLiteOrBuilder, MessageOrBuilder, java.io.Serializable
  Enclosing class:
    DescriptorProtos

      public static final class DescriptorProtos.FileOptions
      extends GeneratedMessageV3.ExtendableMessage<DescriptorProtos.FileOptions>
      implements DescriptorProtos.FileOptionsOrBuilder

  Protobuf type `google.protobuf.FileOptions`
  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `DescriptorProtos.FileOptions.Builder` Protobuf type `google.protobuf.FileOptions`
    `static class` | `DescriptorProtos.FileOptions.OptimizeMode` Generated classes can be optimized for speed or code size.

    - ### Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3.ExtendableMessage

      `GeneratedMessageV3.ExtendableMessage.ExtensionWriter`

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

      `GeneratedMessageV3.BuilderParent, GeneratedMessageV3.ExtendableBuilder<MessageType extends GeneratedMessageV3.ExtendableMessage,BuilderType extends GeneratedMessageV3.ExtendableBuilder<MessageType,BuilderType>>, GeneratedMessageV3.ExtendableMessage<MessageType extends GeneratedMessageV3.ExtendableMessage>, GeneratedMessageV3.ExtendableMessageOrBuilder<MessageType extends GeneratedMessageV3.ExtendableMessage>, GeneratedMessageV3.FieldAccessorTable`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `CC_ENABLE_ARENAS_FIELD_NUMBER`
    `static int` | `CC_GENERIC_SERVICES_FIELD_NUMBER`
    `static int` | `CSHARP_NAMESPACE_FIELD_NUMBER`
    `static int` | `DEPRECATED_FIELD_NUMBER`
    `static int` | `GO_PACKAGE_FIELD_NUMBER`
    `static int` | `JAVA_GENERATE_EQUALS_AND_HASH_FIELD_NUMBER`
    `static int` | `JAVA_GENERIC_SERVICES_FIELD_NUMBER`
    `static int` | `JAVA_MULTIPLE_FILES_FIELD_NUMBER`
    `static int` | `JAVA_OUTER_CLASSNAME_FIELD_NUMBER`
    `static int` | `JAVA_PACKAGE_FIELD_NUMBER`
    `static int` | `JAVA_STRING_CHECK_UTF8_FIELD_NUMBER`
    `static int` | `OBJC_CLASS_PREFIX_FIELD_NUMBER`
    `static int` | `OPTIMIZE_FOR_FIELD_NUMBER`
    `static Parser<DescriptorProtos.FileOptions>` | `PARSER` Deprecated.
    `static int` | `PHP_CLASS_PREFIX_FIELD_NUMBER`
    `static int` | `PY_GENERIC_SERVICES_FIELD_NUMBER`
    `static int` | `SWIFT_PREFIX_FIELD_NUMBER`
    `static int` | `UNINTERPRETED_OPTION_FIELD_NUMBER`

    - ### Fields inherited from class com.google.protobuf.GeneratedMessageV3

      `alwaysUseFieldBuilders, unknownFields`

    - ### Fields inherited from class com.google.protobuf.AbstractMessage

      `memoizedSize`

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

      `memoizedHashCode`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(java.lang.Object obj)` Compares the specified object with this message for equality.
    `boolean` | `getCcEnableArenas()` Enables the use of arenas for the proto messages in this file.
    `boolean` | `getCcGenericServices()` Should generic services be generated in each language? "Generic" services are not specific to any particular RPC system.
    `java.lang.String` | `getCsharpNamespace()` Namespace for generated classes; defaults to the package.
    `ByteString` | `getCsharpNamespaceBytes()` Namespace for generated classes; defaults to the package.
    `static DescriptorProtos.FileOptions` | `getDefaultInstance()`
    `DescriptorProtos.FileOptions` | `getDefaultInstanceForType()` Get an instance of the type with no fields set.
    `boolean` | `getDeprecated()` Is this file deprecated? Depending on the target platform, this can emit Deprecated annotations for everything in the file, or it will be completely ignored; in the very least, this is a formalization for deprecating files.
    `static Descriptors.Descriptor` | `getDescriptor()`
    `java.lang.String` | `getGoPackage()` Sets the Go package where structs generated from this .proto will be placed.
    `ByteString` | `getGoPackageBytes()` Sets the Go package where structs generated from this .proto will be placed.
    `boolean` | `getJavaGenerateEqualsAndHash()` Deprecated.
    `boolean` | `getJavaGenericServices()` `optional bool java_generic_services = 17 [default = false];`
    `boolean` | `getJavaMultipleFiles()` If set true, then the Java code generator will generate a separate .java file for each top-level message, enum, and service defined in the .proto file.
    `java.lang.String` | `getJavaOuterClassname()` If set, all the classes from the .proto file are wrapped in a single outer class with the given name.
    `ByteString` | `getJavaOuterClassnameBytes()` If set, all the classes from the .proto file are wrapped in a single outer class with the given name.
    `java.lang.String` | `getJavaPackage()` Sets the Java package where classes generated from this .proto will be placed.
    `ByteString` | `getJavaPackageBytes()` Sets the Java package where classes generated from this .proto will be placed.
    `boolean` | `getJavaStringCheckUtf8()` If set true, then the Java2 code generator will generate code that throws an exception whenever an attempt is made to assign a non-UTF-8 byte sequence to a string field.
    `java.lang.String` | `getObjcClassPrefix()` Sets the objective c class prefix which is prepended to all objective c generated classes from this .proto.
    `ByteString` | `getObjcClassPrefixBytes()` Sets the objective c class prefix which is prepended to all objective c generated classes from this .proto.
    `DescriptorProtos.FileOptions.OptimizeMode` | `getOptimizeFor()` `optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];`
    `Parser<DescriptorProtos.FileOptions>` | `getParserForType()` Gets the parser for a message of the same type as this message.
    `java.lang.String` | `getPhpClassPrefix()` Sets the php class prefix which is prepended to all php generated classes from this .proto.
    `ByteString` | `getPhpClassPrefixBytes()` Sets the php class prefix which is prepended to all php generated classes from this .proto.
    `boolean` | `getPyGenericServices()` `optional bool py_generic_services = 18 [default = false];`
    `int` | `getSerializedSize()` Get the number of bytes required to encode this message.
    `java.lang.String` | `getSwiftPrefix()` By default Swift generators will take the proto package and CamelCase it replacing '.' with underscore and use that to prefix the types/symbols defined.
    `ByteString` | `getSwiftPrefixBytes()` By default Swift generators will take the proto package and CamelCase it replacing '.' with underscore and use that to prefix the types/symbols defined.
    `DescriptorProtos.UninterpretedOption` | `getUninterpretedOption(int index)` The parser stores options it doesn't recognize here.
    `int` | `getUninterpretedOptionCount()` The parser stores options it doesn't recognize here.
    `java.util.List<DescriptorProtos.UninterpretedOption>` | `getUninterpretedOptionList()` The parser stores options it doesn't recognize here.
    `DescriptorProtos.UninterpretedOptionOrBuilder` | `getUninterpretedOptionOrBuilder(int index)` The parser stores options it doesn't recognize here.
    `java.util.List<? extends DescriptorProtos.UninterpretedOptionOrBuilder>` | `getUninterpretedOptionOrBuilderList()` The parser stores options it doesn't recognize here.
    `UnknownFieldSet` | `getUnknownFields()` Get the `UnknownFieldSet` for this message.
    `boolean` | `hasCcEnableArenas()` Enables the use of arenas for the proto messages in this file.
    `boolean` | `hasCcGenericServices()` Should generic services be generated in each language? "Generic" services are not specific to any particular RPC system.
    `boolean` | `hasCsharpNamespace()` Namespace for generated classes; defaults to the package.
    `boolean` | `hasDeprecated()` Is this file deprecated? Depending on the target platform, this can emit Deprecated annotations for everything in the file, or it will be completely ignored; in the very least, this is a formalization for deprecating files.
    `boolean` | `hasGoPackage()` Sets the Go package where structs generated from this .proto will be placed.
    `int` | `hashCode()` Returns the hash code value for this message.
    `boolean` | `hasJavaGenerateEqualsAndHash()` Deprecated.
    `boolean` | `hasJavaGenericServices()` `optional bool java_generic_services = 17 [default = false];`
    `boolean` | `hasJavaMultipleFiles()` If set true, then the Java code generator will generate a separate .java file for each top-level message, enum, and service defined in the .proto file.
    `boolean` | `hasJavaOuterClassname()` If set, all the classes from the .proto file are wrapped in a single outer class with the given name.
    `boolean` | `hasJavaPackage()` Sets the Java package where classes generated from this .proto will be placed.
    `boolean` | `hasJavaStringCheckUtf8()` If set true, then the Java2 code generator will generate code that throws an exception whenever an attempt is made to assign a non-UTF-8 byte sequence to a string field.
    `boolean` | `hasObjcClassPrefix()` Sets the objective c class prefix which is prepended to all objective c generated classes from this .proto.
    `boolean` | `hasOptimizeFor()` `optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];`
    `boolean` | `hasPhpClassPrefix()` Sets the php class prefix which is prepended to all php generated classes from this .proto.
    `boolean` | `hasPyGenericServices()` `optional bool py_generic_services = 18 [default = false];`
    `boolean` | `hasSwiftPrefix()` By default Swift generators will take the proto package and CamelCase it replacing '.' with underscore and use that to prefix the types/symbols defined.
    `protected GeneratedMessageV3.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.FileOptions.Builder` | `newBuilder()`
    `static DescriptorProtos.FileOptions.Builder` | `newBuilder(DescriptorProtos.FileOptions prototype)`
    `DescriptorProtos.FileOptions.Builder` | `newBuilderForType()` Constructs a new builder for a message of the same type as this message.
    `protected DescriptorProtos.FileOptions.Builder` | `newBuilderForType(GeneratedMessageV3.BuilderParent parent)` TODO(xiaofeng): remove this together with GeneratedMessageV3.BuilderParent.
    `static DescriptorProtos.FileOptions` | `parseDelimitedFrom(java.io.InputStream input)`
    `static DescriptorProtos.FileOptions` | `parseDelimitedFrom(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)`
    `static DescriptorProtos.FileOptions` | `parseFrom(byte[] data)`
    `static DescriptorProtos.FileOptions` | `parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)`
    `static DescriptorProtos.FileOptions` | `parseFrom(java.nio.ByteBuffer data)`
    `static DescriptorProtos.FileOptions` | `parseFrom(java.nio.ByteBuffer data, ExtensionRegistryLite extensionRegistry)`
    `static DescriptorProtos.FileOptions` | `parseFrom(ByteString data)`
    `static DescriptorProtos.FileOptions` | `parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)`
    `static DescriptorProtos.FileOptions` | `parseFrom(CodedInputStream input)`
    `static DescriptorProtos.FileOptions` | `parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)`
    `static DescriptorProtos.FileOptions` | `parseFrom(java.io.InputStream input)`
    `static DescriptorProtos.FileOptions` | `parseFrom(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)`
    `static Parser<DescriptorProtos.FileOptions>` | `parser()`
    `DescriptorProtos.FileOptions.Builder` | `toBuilder()` Constructs a builder initialized with the current message.
    `void` | `writeTo(CodedOutputStream output)` Serializes the message and writes it to `output`.

    - ### Methods inherited from class com.google.protobuf.GeneratedMessageV3.ExtendableMessage

      `extensionsAreInitialized, extensionsSerializedSize, extensionsSerializedSizeAsMessageSet, getAllFields, getAllFieldsRaw, getExtension, getExtension, getExtension, getExtension, getExtension, getExtension, getExtensionCount, getExtensionCount, getExtensionCount, getExtensionFields, getField, getRepeatedField, getRepeatedFieldCount, hasExtension, hasExtension, hasExtension, hasField, makeExtensionsImmutable, newExtensionWriter, newMessageSetExtensionWriter, parseUnknownField`

    - ### Methods inherited from class com.google.protobuf.GeneratedMessageV3

      `computeStringSize, computeStringSizeNoTag, getDescriptorForType, getOneofFieldDescriptor, hasOneof, internalGetMapField, newBuilderForType, parseDelimitedWithIOException, parseDelimitedWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag`

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

      `findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString`

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

      `addAll, 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.GeneratedMessageV3.ExtendableMessageOrBuilder

      `getExtension, getExtension, getExtension, getExtension, getExtension, getExtension, getExtensionCount, getExtensionCount, getExtensionCount, hasExtension, hasExtension, hasExtension`

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

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

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

      `toByteArray, toByteString, writeDelimitedTo, writeTo`

- - ### Field Detail

    - #### JAVA_PACKAGE_FIELD_NUMBER

          public static final int JAVA_PACKAGE_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### JAVA_OUTER_CLASSNAME_FIELD_NUMBER

          public static final int JAVA_OUTER_CLASSNAME_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### JAVA_MULTIPLE_FILES_FIELD_NUMBER

          public static final int JAVA_MULTIPLE_FILES_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### JAVA_GENERATE_EQUALS_AND_HASH_FIELD_NUMBER

          public static final int JAVA_GENERATE_EQUALS_AND_HASH_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### JAVA_STRING_CHECK_UTF8_FIELD_NUMBER

          public static final int JAVA_STRING_CHECK_UTF8_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### OPTIMIZE_FOR_FIELD_NUMBER

          public static final int OPTIMIZE_FOR_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### GO_PACKAGE_FIELD_NUMBER

          public static final int GO_PACKAGE_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### CC_GENERIC_SERVICES_FIELD_NUMBER

          public static final int CC_GENERIC_SERVICES_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### JAVA_GENERIC_SERVICES_FIELD_NUMBER

          public static final int JAVA_GENERIC_SERVICES_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### PY_GENERIC_SERVICES_FIELD_NUMBER

          public static final int PY_GENERIC_SERVICES_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### DEPRECATED_FIELD_NUMBER

          public static final int DEPRECATED_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### CC_ENABLE_ARENAS_FIELD_NUMBER

          public static final int CC_ENABLE_ARENAS_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### OBJC_CLASS_PREFIX_FIELD_NUMBER

          public static final int OBJC_CLASS_PREFIX_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### CSHARP_NAMESPACE_FIELD_NUMBER

          public static final int CSHARP_NAMESPACE_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### SWIFT_PREFIX_FIELD_NUMBER

          public static final int SWIFT_PREFIX_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### PHP_CLASS_PREFIX_FIELD_NUMBER

          public static final int PHP_CLASS_PREFIX_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### UNINTERPRETED_OPTION_FIELD_NUMBER

          public static final int UNINTERPRETED_OPTION_FIELD_NUMBER

      See Also:
        Constant Field Values

    - #### PARSER

          @Deprecated
          public static final Parser<DescriptorProtos.FileOptions> PARSER

      Deprecated.

  - ### Method Detail

    - #### 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 `GeneratedMessageV3`

    - #### getDescriptor

          public static final Descriptors.Descriptor getDescriptor()

    - #### internalGetFieldAccessorTable

          protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()

      Description copied from class: `GeneratedMessageV3`
      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 `GeneratedMessageV3`

    - #### hasJavaPackage

          public boolean hasJavaPackage()

           Sets the Java package where classes generated from this .proto will be
           placed.  By default, the proto package is used, but this is often
           inappropriate because proto packages do not normally start with backwards
           domain names.

      `optional string java_package = 1;`
      Specified by:
        `hasJavaPackage` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getJavaPackage

          public java.lang.String getJavaPackage()

           Sets the Java package where classes generated from this .proto will be
           placed.  By default, the proto package is used, but this is often
           inappropriate because proto packages do not normally start with backwards
           domain names.

      `optional string java_package = 1;`
      Specified by:
        `getJavaPackage` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getJavaPackageBytes

          public ByteString getJavaPackageBytes()

           Sets the Java package where classes generated from this .proto will be
           placed.  By default, the proto package is used, but this is often
           inappropriate because proto packages do not normally start with backwards
           domain names.

      `optional string java_package = 1;`
      Specified by:
        `getJavaPackageBytes` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasJavaOuterClassname

          public boolean hasJavaOuterClassname()

           If set, all the classes from the .proto file are wrapped in a single
           outer class with the given name.  This applies to both Proto1
           (equivalent to the old "--one_java_file" option) and Proto2 (where
           a .proto always translates to a single class, but you may want to
           explicitly choose the class name).

      `optional string java_outer_classname = 8;`
      Specified by:
        `hasJavaOuterClassname` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getJavaOuterClassname

          public java.lang.String getJavaOuterClassname()

           If set, all the classes from the .proto file are wrapped in a single
           outer class with the given name.  This applies to both Proto1
           (equivalent to the old "--one_java_file" option) and Proto2 (where
           a .proto always translates to a single class, but you may want to
           explicitly choose the class name).

      `optional string java_outer_classname = 8;`
      Specified by:
        `getJavaOuterClassname` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getJavaOuterClassnameBytes

          public ByteString getJavaOuterClassnameBytes()

           If set, all the classes from the .proto file are wrapped in a single
           outer class with the given name.  This applies to both Proto1
           (equivalent to the old "--one_java_file" option) and Proto2 (where
           a .proto always translates to a single class, but you may want to
           explicitly choose the class name).

      `optional string java_outer_classname = 8;`
      Specified by:
        `getJavaOuterClassnameBytes` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasJavaMultipleFiles

          public boolean hasJavaMultipleFiles()

           If set true, then the Java code generator will generate a separate .java
           file for each top-level message, enum, and service defined in the .proto
           file.  Thus, these types will *not* be nested inside the outer class
           named by java_outer_classname.  However, the outer class will still be
           generated to contain the file's getDescriptor() method as well as any
           top-level extensions defined in the file.

      `optional bool java_multiple_files = 10 [default = false];`
      Specified by:
        `hasJavaMultipleFiles` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getJavaMultipleFiles

          public boolean getJavaMultipleFiles()

           If set true, then the Java code generator will generate a separate .java
           file for each top-level message, enum, and service defined in the .proto
           file.  Thus, these types will *not* be nested inside the outer class
           named by java_outer_classname.  However, the outer class will still be
           generated to contain the file's getDescriptor() method as well as any
           top-level extensions defined in the file.

      `optional bool java_multiple_files = 10 [default = false];`
      Specified by:
        `getJavaMultipleFiles` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasJavaGenerateEqualsAndHash

          @Deprecated
          public boolean hasJavaGenerateEqualsAndHash()

      Deprecated.

           This option does nothing.

      `optional bool java_generate_equals_and_hash = 20 [deprecated = true];`
      Specified by:
        `hasJavaGenerateEqualsAndHash` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getJavaGenerateEqualsAndHash

          @Deprecated
          public boolean getJavaGenerateEqualsAndHash()

      Deprecated.

           This option does nothing.

      `optional bool java_generate_equals_and_hash = 20 [deprecated = true];`
      Specified by:
        `getJavaGenerateEqualsAndHash` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasJavaStringCheckUtf8

          public boolean hasJavaStringCheckUtf8()

           If set true, then the Java2 code generator will generate code that
           throws an exception whenever an attempt is made to assign a non-UTF-8
           byte sequence to a string field.
           Message reflection will do the same.
           However, an extension field still accepts non-UTF-8 byte sequences.
           This option has no effect on when used with the lite runtime.

      `optional bool java_string_check_utf8 = 27 [default = false];`
      Specified by:
        `hasJavaStringCheckUtf8` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getJavaStringCheckUtf8

          public boolean getJavaStringCheckUtf8()

           If set true, then the Java2 code generator will generate code that
           throws an exception whenever an attempt is made to assign a non-UTF-8
           byte sequence to a string field.
           Message reflection will do the same.
           However, an extension field still accepts non-UTF-8 byte sequences.
           This option has no effect on when used with the lite runtime.

      `optional bool java_string_check_utf8 = 27 [default = false];`
      Specified by:
        `getJavaStringCheckUtf8` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasOptimizeFor

          public boolean hasOptimizeFor()

      `optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];`
      Specified by:
        `hasOptimizeFor` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getOptimizeFor

          public DescriptorProtos.FileOptions.OptimizeMode getOptimizeFor()

      `optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];`
      Specified by:
        `getOptimizeFor` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasGoPackage

          public boolean hasGoPackage()

           Sets the Go package where structs generated from this .proto will be
           placed. If omitted, the Go package will be derived from the following:
             - The basename of the package import path, if provided.
             - Otherwise, the package statement in the .proto file, if present.
             - Otherwise, the basename of the .proto file, without extension.

      `optional string go_package = 11;`
      Specified by:
        `hasGoPackage` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getGoPackage

          public java.lang.String getGoPackage()

           Sets the Go package where structs generated from this .proto will be
           placed. If omitted, the Go package will be derived from the following:
             - The basename of the package import path, if provided.
             - Otherwise, the package statement in the .proto file, if present.
             - Otherwise, the basename of the .proto file, without extension.

      `optional string go_package = 11;`
      Specified by:
        `getGoPackage` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getGoPackageBytes

          public ByteString getGoPackageBytes()

           Sets the Go package where structs generated from this .proto will be
           placed. If omitted, the Go package will be derived from the following:
             - The basename of the package import path, if provided.
             - Otherwise, the package statement in the .proto file, if present.
             - Otherwise, the basename of the .proto file, without extension.

      `optional string go_package = 11;`
      Specified by:
        `getGoPackageBytes` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasCcGenericServices

          public boolean hasCcGenericServices()

           Should generic services be generated in each language?  "Generic" services
           are not specific to any particular RPC system.  They are generated by the
           main code generators in each language (without additional plugins).
           Generic services were the only kind of service generation supported by
           early versions of google.protobuf.
           Generic services are now considered deprecated in favor of using plugins
           that generate code specific to your particular RPC system.  Therefore,
           these default to false.  Old code which depends on generic services should
           explicitly set them to true.

      `optional bool cc_generic_services = 16 [default = false];`
      Specified by:
        `hasCcGenericServices` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getCcGenericServices

          public boolean getCcGenericServices()

           Should generic services be generated in each language?  "Generic" services
           are not specific to any particular RPC system.  They are generated by the
           main code generators in each language (without additional plugins).
           Generic services were the only kind of service generation supported by
           early versions of google.protobuf.
           Generic services are now considered deprecated in favor of using plugins
           that generate code specific to your particular RPC system.  Therefore,
           these default to false.  Old code which depends on generic services should
           explicitly set them to true.

      `optional bool cc_generic_services = 16 [default = false];`
      Specified by:
        `getCcGenericServices` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasJavaGenericServices

          public boolean hasJavaGenericServices()

      `optional bool java_generic_services = 17 [default = false];`
      Specified by:
        `hasJavaGenericServices` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getJavaGenericServices

          public boolean getJavaGenericServices()

      `optional bool java_generic_services = 17 [default = false];`
      Specified by:
        `getJavaGenericServices` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasPyGenericServices

          public boolean hasPyGenericServices()

      `optional bool py_generic_services = 18 [default = false];`
      Specified by:
        `hasPyGenericServices` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getPyGenericServices

          public boolean getPyGenericServices()

      `optional bool py_generic_services = 18 [default = false];`
      Specified by:
        `getPyGenericServices` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasDeprecated

          public boolean hasDeprecated()

           Is this file deprecated?
           Depending on the target platform, this can emit Deprecated annotations
           for everything in the file, or it will be completely ignored; in the very
           least, this is a formalization for deprecating files.

      `optional bool deprecated = 23 [default = false];`
      Specified by:
        `hasDeprecated` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getDeprecated

          public boolean getDeprecated()

           Is this file deprecated?
           Depending on the target platform, this can emit Deprecated annotations
           for everything in the file, or it will be completely ignored; in the very
           least, this is a formalization for deprecating files.

      `optional bool deprecated = 23 [default = false];`
      Specified by:
        `getDeprecated` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasCcEnableArenas

          public boolean hasCcEnableArenas()

           Enables the use of arenas for the proto messages in this file. This applies
           only to generated classes for C++.

      `optional bool cc_enable_arenas = 31 [default = false];`
      Specified by:
        `hasCcEnableArenas` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getCcEnableArenas

          public boolean getCcEnableArenas()

           Enables the use of arenas for the proto messages in this file. This applies
           only to generated classes for C++.

      `optional bool cc_enable_arenas = 31 [default = false];`
      Specified by:
        `getCcEnableArenas` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasObjcClassPrefix

          public boolean hasObjcClassPrefix()

           Sets the objective c class prefix which is prepended to all objective c
           generated classes from this .proto. There is no default.

      `optional string objc_class_prefix = 36;`
      Specified by:
        `hasObjcClassPrefix` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getObjcClassPrefix

          public java.lang.String getObjcClassPrefix()

           Sets the objective c class prefix which is prepended to all objective c
           generated classes from this .proto. There is no default.

      `optional string objc_class_prefix = 36;`
      Specified by:
        `getObjcClassPrefix` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getObjcClassPrefixBytes

          public ByteString getObjcClassPrefixBytes()

           Sets the objective c class prefix which is prepended to all objective c
           generated classes from this .proto. There is no default.

      `optional string objc_class_prefix = 36;`
      Specified by:
        `getObjcClassPrefixBytes` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasCsharpNamespace

          public boolean hasCsharpNamespace()

           Namespace for generated classes; defaults to the package.

      `optional string csharp_namespace = 37;`
      Specified by:
        `hasCsharpNamespace` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getCsharpNamespace

          public java.lang.String getCsharpNamespace()

           Namespace for generated classes; defaults to the package.

      `optional string csharp_namespace = 37;`
      Specified by:
        `getCsharpNamespace` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getCsharpNamespaceBytes

          public ByteString getCsharpNamespaceBytes()

           Namespace for generated classes; defaults to the package.

      `optional string csharp_namespace = 37;`
      Specified by:
        `getCsharpNamespaceBytes` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasSwiftPrefix

          public boolean hasSwiftPrefix()

           By default Swift generators will take the proto package and CamelCase it
           replacing '.' with underscore and use that to prefix the types/symbols
           defined. When this options is provided, they will use this value instead
           to prefix the types/symbols defined.

      `optional string swift_prefix = 39;`
      Specified by:
        `hasSwiftPrefix` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getSwiftPrefix

          public java.lang.String getSwiftPrefix()

           By default Swift generators will take the proto package and CamelCase it
           replacing '.' with underscore and use that to prefix the types/symbols
           defined. When this options is provided, they will use this value instead
           to prefix the types/symbols defined.

      `optional string swift_prefix = 39;`
      Specified by:
        `getSwiftPrefix` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getSwiftPrefixBytes

          public ByteString getSwiftPrefixBytes()

           By default Swift generators will take the proto package and CamelCase it
           replacing '.' with underscore and use that to prefix the types/symbols
           defined. When this options is provided, they will use this value instead
           to prefix the types/symbols defined.

      `optional string swift_prefix = 39;`
      Specified by:
        `getSwiftPrefixBytes` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### hasPhpClassPrefix

          public boolean hasPhpClassPrefix()

           Sets the php class prefix which is prepended to all php generated classes
           from this .proto. Default is empty.

      `optional string php_class_prefix = 40;`
      Specified by:
        `hasPhpClassPrefix` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getPhpClassPrefix

          public java.lang.String getPhpClassPrefix()

           Sets the php class prefix which is prepended to all php generated classes
           from this .proto. Default is empty.

      `optional string php_class_prefix = 40;`
      Specified by:
        `getPhpClassPrefix` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getPhpClassPrefixBytes

          public ByteString getPhpClassPrefixBytes()

           Sets the php class prefix which is prepended to all php generated classes
           from this .proto. Default is empty.

      `optional string php_class_prefix = 40;`
      Specified by:
        `getPhpClassPrefixBytes` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getUninterpretedOptionList

          public java.util.List<DescriptorProtos.UninterpretedOption> getUninterpretedOptionList()

           The parser stores options it doesn't recognize here. See above.

      `repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;`
      Specified by:
        `getUninterpretedOptionList` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getUninterpretedOptionOrBuilderList

          public java.util.List<? extends DescriptorProtos.UninterpretedOptionOrBuilder> getUninterpretedOptionOrBuilderList()

           The parser stores options it doesn't recognize here. See above.

      `repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;`
      Specified by:
        `getUninterpretedOptionOrBuilderList` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getUninterpretedOptionCount

          public int getUninterpretedOptionCount()

           The parser stores options it doesn't recognize here. See above.

      `repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;`
      Specified by:
        `getUninterpretedOptionCount` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getUninterpretedOption

          public DescriptorProtos.UninterpretedOption getUninterpretedOption(int index)

           The parser stores options it doesn't recognize here. See above.

      `repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;`
      Specified by:
        `getUninterpretedOption` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### getUninterpretedOptionOrBuilder

          public DescriptorProtos.UninterpretedOptionOrBuilder getUninterpretedOptionOrBuilder(int index)

           The parser stores options it doesn't recognize here. See above.

      `repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;`
      Specified by:
        `getUninterpretedOptionOrBuilder` in interface `DescriptorProtos.FileOptionsOrBuilder`

    - #### 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 `GeneratedMessageV3.ExtendableMessage<DescriptorProtos.FileOptions>`

    - #### 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 `GeneratedMessageV3`
      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 `GeneratedMessageV3`

    - #### equals

          public boolean equals(java.lang.Object obj)

      Description copied from interface: `Message`
      Compares the specified object with this message for equality. Returns `true` if the given object is a message of the same type (as defined by `getDescriptorForType()`) and has identical values for all of its fields. Subclasses must implement this; inheriting `Object.equals()` is incorrect.
      Specified by:
        `equals` in interface `Message`
      Overrides:
        `equals` in class `AbstractMessage`
      Parameters:
        `obj` - object to be compared for equality with this message
      Returns:
        `true` if the specified object is equal to this message

    - #### hashCode

          public int hashCode()

      Description copied from interface: `Message`
      Returns the hash code value for this message. The hash code of a message should mix the message's type (object identity of the descriptor) with its contents (known and unknown field values). Subclasses must implement this; inheriting `Object.hashCode()` is incorrect.
      Specified by:
        `hashCode` in interface `Message`
      Overrides:
        `hashCode` in class `AbstractMessage`
      Returns:
        the hash code value for this message
      See Also:
        `Map.hashCode()`

    - #### parseFrom

          public static DescriptorProtos.FileOptions parseFrom(java.nio.ByteBuffer data)
                                                        throws InvalidProtocolBufferException

      Throws:
        `InvalidProtocolBufferException`

    - #### parseFrom

          public static DescriptorProtos.FileOptions parseFrom(java.nio.ByteBuffer data,
                                               ExtensionRegistryLite extensionRegistry)
                                                        throws InvalidProtocolBufferException

      Throws:
        `InvalidProtocolBufferException`

    - #### parseFrom

          public static DescriptorProtos.FileOptions parseFrom(ByteString data)
                                                        throws InvalidProtocolBufferException

      Throws:
        `InvalidProtocolBufferException`

    - #### parseFrom

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

      Throws:
        `InvalidProtocolBufferException`

    - #### parseFrom

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

      Throws:
        `InvalidProtocolBufferException`

    - #### parseFrom

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

      Throws:
        `InvalidProtocolBufferException`

    - #### parseFrom

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

      Throws:
        `java.io.IOException`

    - #### parseFrom

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

      Throws:
        `java.io.IOException`

    - #### parseDelimitedFrom

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

      Throws:
        `java.io.IOException`

    - #### parseDelimitedFrom

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

      Throws:
        `java.io.IOException`

    - #### parseFrom

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

      Throws:
        `java.io.IOException`

    - #### parseFrom

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

      Throws:
        `java.io.IOException`

    - #### newBuilderForType

          public DescriptorProtos.FileOptions.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.FileOptions.Builder newBuilder()

    - #### newBuilder

          public static DescriptorProtos.FileOptions.Builder newBuilder(DescriptorProtos.FileOptions prototype)

    - #### toBuilder

          public DescriptorProtos.FileOptions.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.FileOptions.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)

      Description copied from class: `GeneratedMessageV3`
      TODO(xiaofeng): remove this together with GeneratedMessageV3.BuilderParent.
      Specified by:
        `newBuilderForType` in class `GeneratedMessageV3`

    - #### getDefaultInstance

          public static DescriptorProtos.FileOptions getDefaultInstance()

    - #### parser

          public static Parser<DescriptorProtos.FileOptions> parser()

    - #### getParserForType

          public Parser<DescriptorProtos.FileOptions> 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 `GeneratedMessageV3`

    - #### getDefaultInstanceForType

          public DescriptorProtos.FileOptions 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 `GeneratedMessageV3.ExtendableMessageOrBuilder<DescriptorProtos.FileOptions>`
      Specified by:
        `getDefaultInstanceForType` in interface `MessageLiteOrBuilder`
      Specified by:
        `getDefaultInstanceForType` in interface `MessageOrBuilder`