<PackageReference Include="Google.Protobuf" Version="3.33.6" />

Google.Protobuf.Reflection.FileOptions

public static class Types

Container for nested types declared in the FileOptions message type.

public const int CcEnableArenasFieldNumber = 31

Field number for the "cc_enable_arenas" field.

public const int CcGenericServicesFieldNumber = 16

Field number for the "cc_generic_services" field.

public const int CsharpNamespaceFieldNumber = 37

Field number for the "csharp_namespace" field.

public const int DeprecatedFieldNumber = 23

Field number for the "deprecated" field.

public const int FeaturesFieldNumber = 50

Field number for the "features" field.

public const int GoPackageFieldNumber = 11

Field number for the "go_package" field.

Field number for the "java_generate_equals_and_hash" field.

public const int JavaGenericServicesFieldNumber = 17

Field number for the "java_generic_services" field.

public const int JavaMultipleFilesFieldNumber = 10

Field number for the "java_multiple_files" field.

public const int JavaOuterClassnameFieldNumber = 8

Field number for the "java_outer_classname" field.

public const int JavaPackageFieldNumber = 1

Field number for the "java_package" field.

public const int JavaStringCheckUtf8FieldNumber = 27

Field number for the "java_string_check_utf8" field.

public const int ObjcClassPrefixFieldNumber = 36

Field number for the "objc_class_prefix" field.

public const int OptimizeForFieldNumber = 9

Field number for the "optimize_for" field.

public const int PhpClassPrefixFieldNumber = 40

Field number for the "php_class_prefix" field.

public const int PhpMetadataNamespaceFieldNumber = 44

Field number for the "php_metadata_namespace" field.

public const int PhpNamespaceFieldNumber = 41

Field number for the "php_namespace" field.

public const int PyGenericServicesFieldNumber = 18

Field number for the "py_generic_services" field.

public const int RubyPackageFieldNumber = 45

Field number for the "ruby_package" field.

public const int SwiftPrefixFieldNumber = 39

Field number for the "swift_prefix" field.

public const int UninterpretedOptionFieldNumber = 999

Field number for the "uninterpreted_option" field.

public static MessageDescriptor Descriptor { get; }

public static MessageParser<FileOptions> Parser { get; }

public bool CcEnableArenas { get; set; }

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

public bool CcGenericServices { get; set; }

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.

public string CsharpNamespace { get; set; }

Namespace for generated classes; defaults to the package.

public bool Deprecated { get; set; }

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.

public FeatureSet Features { get; set; }

Any features defined in the specific edition. WARNING: This field should only be used by protobuf plugins or special cases like the proto compiler. Other uses are discouraged and developers should rely on the protoreflect APIs for their client language.

public string GoPackage { get; set; }

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.

public bool HasCcEnableArenas { get; }

Gets whether the "cc_enable_arenas" field is set

public bool HasCcGenericServices { get; }

Gets whether the "cc_generic_services" field is set

public bool HasCsharpNamespace { get; }

Gets whether the "csharp_namespace" field is set

public bool HasDeprecated { get; }

Gets whether the "deprecated" field is set

public bool HasGoPackage { get; }

Gets whether the "go_package" field is set

public bool HasJavaGenerateEqualsAndHash { get; }

Gets whether the "java_generate_equals_and_hash" field is set

public bool HasJavaGenericServices { get; }

Gets whether the "java_generic_services" field is set

public bool HasJavaMultipleFiles { get; }

Gets whether the "java_multiple_files" field is set

public bool HasJavaOuterClassname { get; }

Gets whether the "java_outer_classname" field is set

public bool HasJavaPackage { get; }

Gets whether the "java_package" field is set

public bool HasJavaStringCheckUtf8 { get; }

Gets whether the "java_string_check_utf8" field is set

public bool HasObjcClassPrefix { get; }

Gets whether the "objc_class_prefix" field is set

public bool HasOptimizeFor { get; }

Gets whether the "optimize_for" field is set

public bool HasPhpClassPrefix { get; }

Gets whether the "php_class_prefix" field is set

public bool HasPhpMetadataNamespace { get; }

Gets whether the "php_metadata_namespace" field is set

public bool HasPhpNamespace { get; }

Gets whether the "php_namespace" field is set

public bool HasPyGenericServices { get; }

Gets whether the "py_generic_services" field is set

public bool HasRubyPackage { get; }

Gets whether the "ruby_package" field is set

public bool HasSwiftPrefix { get; }

Gets whether the "swift_prefix" field is set

public bool JavaGenerateEqualsAndHash { get; set; }

This option does nothing.

public bool JavaGenericServices { get; set; }

public bool JavaMultipleFiles { get; set; }

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.

public string JavaOuterClassname { get; set; }

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.

public string JavaPackage { get; set; }

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.

public bool JavaStringCheckUtf8 { get; set; }

A proto2 file can set this to true to opt in to UTF-8 checking for Java, which will throw an exception if invalid UTF-8 is parsed from the wire or assigned to a string field. TODO: clarify exactly what kinds of field types this option applies to, and update these docs accordingly. Proto3 files already perform these checks. Setting the option explicitly to false has no effect: it cannot be used to opt proto3 files out of UTF-8 checks.

public string ObjcClassPrefix { get; set; }

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

public OptimizeMode OptimizeFor { get; set; }

public string PhpClassPrefix { get; set; }

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

public string PhpMetadataNamespace { get; set; }

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.

public string PhpNamespace { get; set; }

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.

public bool PyGenericServices { get; set; }

public string RubyPackage { get; set; }

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.

public string SwiftPrefix { get; set; }

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.

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

public FileOptions()

public FileOptions(FileOptions other)

public int CalculateSize()

public void ClearCcEnableArenas()

Clears the value of the "cc_enable_arenas" field

public void ClearCcGenericServices()

Clears the value of the "cc_generic_services" field

public void ClearCsharpNamespace()

Clears the value of the "csharp_namespace" field

public void ClearDeprecated()

Clears the value of the "deprecated" field

public void ClearExtension<TValue>(Extension<FileOptions, TValue> extension)

public void ClearExtension<TValue>(RepeatedExtension<FileOptions, TValue> extension)

public void ClearGoPackage()

Clears the value of the "go_package" field

Clears the value of the "java_generate_equals_and_hash" field

Clears the value of the "java_generic_services" field

public void ClearJavaMultipleFiles()

Clears the value of the "java_multiple_files" field

Clears the value of the "java_outer_classname" field

public void ClearJavaPackage()

Clears the value of the "java_package" field

Clears the value of the "java_string_check_utf8" field

public void ClearObjcClassPrefix()

Clears the value of the "objc_class_prefix" field

public void ClearOptimizeFor()

Clears the value of the "optimize_for" field

public void ClearPhpClassPrefix()

Clears the value of the "php_class_prefix" field

Clears the value of the "php_metadata_namespace" field

public void ClearPhpNamespace()

Clears the value of the "php_namespace" field

public void ClearPyGenericServices()

Clears the value of the "py_generic_services" field

public void ClearRubyPackage()

Clears the value of the "ruby_package" field

public void ClearSwiftPrefix()

Clears the value of the "swift_prefix" field

public FileOptions Clone()

public bool Equals(FileOptions other)

public TValue GetExtension<TValue>(Extension<FileOptions, TValue> extension)

public RepeatedField<TValue> GetExtension<TValue>(RepeatedExtension<FileOptions, TValue> extension)

public RepeatedField<TValue> GetOrInitializeExtension<TValue>(RepeatedExtension<FileOptions, TValue> extension)

public bool HasExtension<TValue>(Extension<FileOptions, TValue> extension)

public void MergeFrom(FileOptions other)

public void MergeFrom(CodedInputStream input)

public void SetExtension<TValue>(Extension<FileOptions, TValue> extension, TValue value)

public void WriteTo(CodedOutputStream output)