Class FileOptions

public sealed class FileOptions : object, IExtendableMessage<FileOptions>, IMessage<FileOptions>, IEquatable<FileOptions>, IDeepCloneable<FileOptions>, IBufferMessage, IMessage

Inheritance

Object > FileOptions

Namespace

Google.Protobuf.Reflection

Assembly

Google.Protobuf.dll

Constructors

FileOptions()

public FileOptions()

FileOptions(FileOptions)

public FileOptions(FileOptions other)
Parameter
TypeNameDescription
FileOptionsother

Fields

CcEnableArenasFieldNumber

public const int CcEnableArenasFieldNumber = null

Field number for the "cc_enable_arenas" field.

Field Value
TypeDescription
Int32

CcGenericServicesFieldNumber

public const int CcGenericServicesFieldNumber = null

Field number for the "cc_generic_services" field.

Field Value
TypeDescription
Int32

CsharpNamespaceFieldNumber

public const int CsharpNamespaceFieldNumber = null

Field number for the "csharp_namespace" field.

Field Value
TypeDescription
Int32

DeprecatedFieldNumber

public const int DeprecatedFieldNumber = null

Field number for the "deprecated" field.

Field Value
TypeDescription
Int32

GoPackageFieldNumber

public const int GoPackageFieldNumber = null

Field number for the "go_package" field.

Field Value
TypeDescription
Int32

JavaGenerateEqualsAndHashFieldNumber

public const int JavaGenerateEqualsAndHashFieldNumber = null

Field number for the "java_generate_equals_and_hash" field.

Field Value
TypeDescription
Int32

JavaGenericServicesFieldNumber

public const int JavaGenericServicesFieldNumber = null

Field number for the "java_generic_services" field.

Field Value
TypeDescription
Int32

JavaMultipleFilesFieldNumber

public const int JavaMultipleFilesFieldNumber = null

Field number for the "java_multiple_files" field.

Field Value
TypeDescription
Int32

JavaOuterClassnameFieldNumber

public const int JavaOuterClassnameFieldNumber = null

Field number for the "java_outer_classname" field.

Field Value
TypeDescription
Int32

JavaPackageFieldNumber

public const int JavaPackageFieldNumber = null

Field number for the "java_package" field.

Field Value
TypeDescription
Int32

JavaStringCheckUtf8FieldNumber

public const int JavaStringCheckUtf8FieldNumber = null

Field number for the "java_string_check_utf8" field.

Field Value
TypeDescription
Int32

ObjcClassPrefixFieldNumber

public const int ObjcClassPrefixFieldNumber = null

Field number for the "objc_class_prefix" field.

Field Value
TypeDescription
Int32

OptimizeForFieldNumber

public const int OptimizeForFieldNumber = null

Field number for the "optimize_for" field.

Field Value
TypeDescription
Int32

PhpClassPrefixFieldNumber

public const int PhpClassPrefixFieldNumber = null

Field number for the "php_class_prefix" field.

Field Value
TypeDescription
Int32

PhpGenericServicesFieldNumber

public const int PhpGenericServicesFieldNumber = null

Field number for the "php_generic_services" field.

Field Value
TypeDescription
Int32

PhpMetadataNamespaceFieldNumber

public const int PhpMetadataNamespaceFieldNumber = null

Field number for the "php_metadata_namespace" field.

Field Value
TypeDescription
Int32

PhpNamespaceFieldNumber

public const int PhpNamespaceFieldNumber = null

Field number for the "php_namespace" field.

Field Value
TypeDescription
Int32

PyGenericServicesFieldNumber

public const int PyGenericServicesFieldNumber = null

Field number for the "py_generic_services" field.

Field Value
TypeDescription
Int32

RubyPackageFieldNumber

public const int RubyPackageFieldNumber = null

Field number for the "ruby_package" field.

Field Value
TypeDescription
Int32

SwiftPrefixFieldNumber

public const int SwiftPrefixFieldNumber = null

Field number for the "swift_prefix" field.

Field Value
TypeDescription
Int32

UninterpretedOptionFieldNumber

public const int UninterpretedOptionFieldNumber = null

Field number for the "uninterpreted_option" field.

Field Value
TypeDescription
Int32

Properties

CcEnableArenas

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

Property Value
TypeDescription
Boolean

CcGenericServices

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.

Property Value
TypeDescription
Boolean

CsharpNamespace

public string CsharpNamespace { get; set; }

Namespace for generated classes; defaults to the package.

Property Value
TypeDescription
String

Deprecated

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.

Property Value
TypeDescription
Boolean

Descriptor

public static MessageDescriptor Descriptor { get; }
Property Value
TypeDescription
MessageDescriptor

GoPackage

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.
Property Value
TypeDescription
String

HasCcEnableArenas

public bool HasCcEnableArenas { get; }

Gets whether the "cc_enable_arenas" field is set

Property Value
TypeDescription
Boolean

HasCcGenericServices

public bool HasCcGenericServices { get; }

Gets whether the "cc_generic_services" field is set

Property Value
TypeDescription
Boolean

HasCsharpNamespace

public bool HasCsharpNamespace { get; }

Gets whether the "csharp_namespace" field is set

Property Value
TypeDescription
Boolean

HasDeprecated

public bool HasDeprecated { get; }

Gets whether the "deprecated" field is set

Property Value
TypeDescription
Boolean

HasGoPackage

public bool HasGoPackage { get; }

Gets whether the "go_package" field is set

Property Value
TypeDescription
Boolean

HasJavaGenerateEqualsAndHash

public bool HasJavaGenerateEqualsAndHash { get; }

Gets whether the "java_generate_equals_and_hash" field is set

Property Value
TypeDescription
Boolean

HasJavaGenericServices

public bool HasJavaGenericServices { get; }

Gets whether the "java_generic_services" field is set

Property Value
TypeDescription
Boolean

HasJavaMultipleFiles

public bool HasJavaMultipleFiles { get; }

Gets whether the "java_multiple_files" field is set

Property Value
TypeDescription
Boolean

HasJavaOuterClassname

public bool HasJavaOuterClassname { get; }

Gets whether the "java_outer_classname" field is set

Property Value
TypeDescription
Boolean

HasJavaPackage

public bool HasJavaPackage { get; }

Gets whether the "java_package" field is set

Property Value
TypeDescription
Boolean

HasJavaStringCheckUtf8

public bool HasJavaStringCheckUtf8 { get; }

Gets whether the "java_string_check_utf8" field is set

Property Value
TypeDescription
Boolean

HasObjcClassPrefix

public bool HasObjcClassPrefix { get; }

Gets whether the "objc_class_prefix" field is set

Property Value
TypeDescription
Boolean

HasOptimizeFor

public bool HasOptimizeFor { get; }

Gets whether the "optimize_for" field is set

Property Value
TypeDescription
Boolean

HasPhpClassPrefix

public bool HasPhpClassPrefix { get; }

Gets whether the "php_class_prefix" field is set

Property Value
TypeDescription
Boolean

HasPhpGenericServices

public bool HasPhpGenericServices { get; }

Gets whether the "php_generic_services" field is set

Property Value
TypeDescription
Boolean

HasPhpMetadataNamespace

public bool HasPhpMetadataNamespace { get; }

Gets whether the "php_metadata_namespace" field is set

Property Value
TypeDescription
Boolean

HasPhpNamespace

public bool HasPhpNamespace { get; }

Gets whether the "php_namespace" field is set

Property Value
TypeDescription
Boolean

HasPyGenericServices

public bool HasPyGenericServices { get; }

Gets whether the "py_generic_services" field is set

Property Value
TypeDescription
Boolean

HasRubyPackage

public bool HasRubyPackage { get; }

Gets whether the "ruby_package" field is set

Property Value
TypeDescription
Boolean

HasSwiftPrefix

public bool HasSwiftPrefix { get; }

Gets whether the "swift_prefix" field is set

Property Value
TypeDescription
Boolean

JavaGenerateEqualsAndHash

public bool JavaGenerateEqualsAndHash { get; set; }

This option does nothing.

Property Value
TypeDescription
Boolean

JavaGenericServices

public bool JavaGenericServices { get; set; }
Property Value
TypeDescription
Boolean

JavaMultipleFiles

public bool JavaMultipleFiles { get; set; }

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.

Property Value
TypeDescription
Boolean

JavaOuterClassname

public string JavaOuterClassname { get; set; }

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

Property Value
TypeDescription
String

JavaPackage

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.

Property Value
TypeDescription
String

JavaStringCheckUtf8

public bool JavaStringCheckUtf8 { get; set; }

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.

Property Value
TypeDescription
Boolean

ObjcClassPrefix

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.

Property Value
TypeDescription
String

OptimizeFor

public FileOptions.Types.OptimizeMode OptimizeFor { get; set; }
Property Value
TypeDescription
FileOptions.Types.OptimizeMode

Parser

public static MessageParser<FileOptions> Parser { get; }
Property Value
TypeDescription
MessageParser<FileOptions>

PhpClassPrefix

public string PhpClassPrefix { get; set; }

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

Property Value
TypeDescription
String

PhpGenericServices

public bool PhpGenericServices { get; set; }
Property Value
TypeDescription
Boolean

PhpMetadataNamespace

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.

Property Value
TypeDescription
String

PhpNamespace

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.

Property Value
TypeDescription
String

PyGenericServices

public bool PyGenericServices { get; set; }
Property Value
TypeDescription
Boolean

RubyPackage

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.

Property Value
TypeDescription
String

SwiftPrefix

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.

Property Value
TypeDescription
String

UninterpretedOption

public RepeatedField<UninterpretedOption> UninterpretedOption { get; }

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

Property Value
TypeDescription
RepeatedField<UninterpretedOption>

Methods

CalculateSize()

public int CalculateSize()
Returns
TypeDescription
Int32

ClearCcEnableArenas()

public void ClearCcEnableArenas()

Clears the value of the "cc_enable_arenas" field

ClearCcGenericServices()

public void ClearCcGenericServices()

Clears the value of the "cc_generic_services" field

ClearCsharpNamespace()

public void ClearCsharpNamespace()

Clears the value of the "csharp_namespace" field

ClearDeprecated()

public void ClearDeprecated()

Clears the value of the "deprecated" field

ClearExtension<TValue>(Extension<FileOptions, TValue>)

public void ClearExtension<TValue>(Extension<FileOptions, TValue> extension)
Parameter
TypeNameDescription
Extension<FileOptions, TValue>extension
Type Parameter
NameDescription
TValue

ClearExtension<TValue>(RepeatedExtension<FileOptions, TValue>)

public void ClearExtension<TValue>(RepeatedExtension<FileOptions, TValue> extension)
Parameter
TypeNameDescription
RepeatedExtension<FileOptions, TValue>extension
Type Parameter
NameDescription
TValue

ClearGoPackage()

public void ClearGoPackage()

Clears the value of the "go_package" field

ClearJavaGenerateEqualsAndHash()

public void ClearJavaGenerateEqualsAndHash()

Clears the value of the "java_generate_equals_and_hash" field

ClearJavaGenericServices()

public void ClearJavaGenericServices()

Clears the value of the "java_generic_services" field

ClearJavaMultipleFiles()

public void ClearJavaMultipleFiles()

Clears the value of the "java_multiple_files" field

ClearJavaOuterClassname()

public void ClearJavaOuterClassname()

Clears the value of the "java_outer_classname" field

ClearJavaPackage()

public void ClearJavaPackage()

Clears the value of the "java_package" field

ClearJavaStringCheckUtf8()

public void ClearJavaStringCheckUtf8()

Clears the value of the "java_string_check_utf8" field

ClearObjcClassPrefix()

public void ClearObjcClassPrefix()

Clears the value of the "objc_class_prefix" field

ClearOptimizeFor()

public void ClearOptimizeFor()

Clears the value of the "optimize_for" field

ClearPhpClassPrefix()

public void ClearPhpClassPrefix()

Clears the value of the "php_class_prefix" field

ClearPhpGenericServices()

public void ClearPhpGenericServices()

Clears the value of the "php_generic_services" field

ClearPhpMetadataNamespace()

public void ClearPhpMetadataNamespace()

Clears the value of the "php_metadata_namespace" field

ClearPhpNamespace()

public void ClearPhpNamespace()

Clears the value of the "php_namespace" field

ClearPyGenericServices()

public void ClearPyGenericServices()

Clears the value of the "py_generic_services" field

ClearRubyPackage()

public void ClearRubyPackage()

Clears the value of the "ruby_package" field

ClearSwiftPrefix()

public void ClearSwiftPrefix()

Clears the value of the "swift_prefix" field

Clone()

public FileOptions Clone()
Returns
TypeDescription
FileOptions

Equals(FileOptions)

public bool Equals(FileOptions other)
Parameter
TypeNameDescription
FileOptionsother
Returns
TypeDescription
Boolean

Equals(Object)

public override bool Equals(object other)
Parameter
TypeNameDescription
Objectother
Returns
TypeDescription
Boolean

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

public TValue GetExtension<TValue>(Extension<FileOptions, TValue> extension)
Parameter
TypeNameDescription
Extension<FileOptions, TValue>extension
Returns
TypeDescription
TValue
Type Parameter
NameDescription
TValue

GetExtension<TValue>(RepeatedExtension<FileOptions, TValue>)

public RepeatedField<TValue> GetExtension<TValue>(RepeatedExtension<FileOptions, TValue> extension)
Parameter
TypeNameDescription
RepeatedExtension<FileOptions, TValue>extension
Returns
TypeDescription
RepeatedField<TValue>
Type Parameter
NameDescription
TValue

GetHashCode()

public override int GetHashCode()
Returns
TypeDescription
Int32

GetOrInitializeExtension<TValue>(RepeatedExtension<FileOptions, TValue>)

public RepeatedField<TValue> GetOrInitializeExtension<TValue>(RepeatedExtension<FileOptions, TValue> extension)
Parameter
TypeNameDescription
RepeatedExtension<FileOptions, TValue>extension
Returns
TypeDescription
RepeatedField<TValue>
Type Parameter
NameDescription
TValue

HasExtension<TValue>(Extension<FileOptions, TValue>)

public bool HasExtension<TValue>(Extension<FileOptions, TValue> extension)
Parameter
TypeNameDescription
Extension<FileOptions, TValue>extension
Returns
TypeDescription
Boolean
Type Parameter
NameDescription
TValue

MergeFrom(CodedInputStream)

public void MergeFrom(CodedInputStream input)
Parameter
TypeNameDescription
CodedInputStreaminput

MergeFrom(FileOptions)

public void MergeFrom(FileOptions other)
Parameter
TypeNameDescription
FileOptionsother

SetExtension<TValue>(Extension<FileOptions, TValue>, TValue)

public void SetExtension<TValue>(Extension<FileOptions, TValue> extension, TValue value)
Parameters
TypeNameDescription
Extension<FileOptions, TValue>extension
TValuevalue
Type Parameter
NameDescription
TValue

ToString()

public override string ToString()
Returns
TypeDescription
String

WriteTo(CodedOutputStream)

public void WriteTo(CodedOutputStream output)
Parameter
TypeNameDescription
CodedOutputStreamoutput

Explicit Interface Implementations

IBufferMessage.InternalMergeFrom(ref ParseContext)

void IBufferMessage.InternalMergeFrom(ref ParseContext input)
Parameter
TypeNameDescription
ParseContextinput

IBufferMessage.InternalWriteTo(ref WriteContext)

void IBufferMessage.InternalWriteTo(ref WriteContext output)
Parameter
TypeNameDescription
WriteContextoutput

IMessage.Descriptor

MessageDescriptor IMessage.Descriptor { get; }
Returns
TypeDescription
MessageDescriptor

Implements

IEquatable<>