Skip to main content

Interface: IFileOptions

Properties of a FileOptions.

Extends​

Properties​

.grpc.gateway.protoc_gen_openapiv2.options.openapiv2Swagger?​

optional .grpc.gateway.protoc_gen_openapiv2.options.openapiv2Swagger?: $Properties | null

FileOptions .grpc.gateway.protoc_gen_openapiv2.options.openapiv2Swagger

Inherited from​

$Properties..grpc.gateway.protoc_gen_openapiv2.options.openapiv2Swagger


ccEnableArenas?​

optional ccEnableArenas?: boolean | null

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

Inherited from​

$Properties.ccEnableArenas


ccGenericServices?​

optional ccGenericServices?: boolean | null

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.

Inherited from​

$Properties.ccGenericServices


csharpNamespace?​

optional csharpNamespace?: string | null

Namespace for generated classes; defaults to the package.

Inherited from​

$Properties.csharpNamespace


deprecated?​

optional deprecated?: boolean | null

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.

Inherited from​

$Properties.deprecated


features?​

optional features?: $Properties | null

Any features defined in the specific edition.

Inherited from​

$Properties.features


goPackage?​

optional goPackage?: string | null

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.

Inherited from​

$Properties.goPackage


javaGenerateEqualsAndHash?​

optional javaGenerateEqualsAndHash?: boolean | null

This option does nothing.

Inherited from​

$Properties.javaGenerateEqualsAndHash


javaGenericServices?​

optional javaGenericServices?: boolean | null

FileOptions javaGenericServices

Inherited from​

$Properties.javaGenericServices


javaMultipleFiles?​

optional javaMultipleFiles?: boolean | null

If enabled, 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 wrapper class named by java_outer_classname. However, the wrapper class will still be generated to contain the file's getDescriptor() method as well as any top-level extensions defined in the file.

Inherited from​

$Properties.javaMultipleFiles


javaOuterClassname?​

optional javaOuterClassname?: string | null

Controls the name of the wrapper Java class generated for the .proto file. That class will always contain the .proto file's getDescriptor() method as well as any top-level extensions defined in the .proto file. If java_multiple_files is disabled, then all the other classes from the .proto file will be nested inside the single wrapper outer class.

Inherited from​

$Properties.javaOuterClassname


javaPackage?​

optional javaPackage?: string | null

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.

Inherited from​

$Properties.javaPackage


javaStringCheckUtf8?​

optional javaStringCheckUtf8?: boolean | null

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.

Inherited from​

$Properties.javaStringCheckUtf8


objcClassPrefix?​

optional objcClassPrefix?: string | null

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

Inherited from​

$Properties.objcClassPrefix


optimizeFor?​

optional optimizeFor?: OptimizeMode | null

FileOptions optimizeFor

Inherited from​

$Properties.optimizeFor


phpClassPrefix?​

optional phpClassPrefix?: string | null

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

Inherited from​

$Properties.phpClassPrefix


phpGenericServices?​

optional phpGenericServices?: boolean | null

FileOptions phpGenericServices

Inherited from​

$Properties.phpGenericServices


phpMetadataNamespace?​

optional phpMetadataNamespace?: string | null

Use this option to change the namespace of php generated metadata classes. Default is empty. When this option is empty, the proto file name will be used for determining the namespace.

Inherited from​

$Properties.phpMetadataNamespace


phpNamespace?​

optional phpNamespace?: string | null

Use this option to change the namespace of php generated classes. Default is empty. When this option is empty, the package name will be used for determining the namespace.

Inherited from​

$Properties.phpNamespace


pyGenericServices?​

optional pyGenericServices?: boolean | null

FileOptions pyGenericServices

Inherited from​

$Properties.pyGenericServices


rubyPackage?​

optional rubyPackage?: string | null

Use this option to change the package of ruby generated classes. Default is empty. When this option is not set, the package name will be used for determining the ruby package.

Inherited from​

$Properties.rubyPackage


swiftPrefix?​

optional swiftPrefix?: string | null

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.

Inherited from​

$Properties.swiftPrefix


uninterpretedOption?​

optional uninterpretedOption?: $Properties[] | null

The parser stores options it doesn't recognize here. See the documentation for the "Options" section above.

Inherited from​

$Properties.uninterpretedOption