Copied!

Generated from protobuf message google.protobuf.MessageOptions

CloneableInstantiable
Methods
public __construct( $data = NULL)
 

Constructor.

  • param array $data { Optional. Data for populating the Message object.
    @type bool $message_set_wire_format
          Set true to use the old proto1 MessageSet wire format for extensions.
          This is provided for backwards-compatibility with the MessageSet wire
          format.  You should not use this for any other reason:  It's less
          efficient, has fewer features, and is more complicated.
          The message must be defined exactly as follows:
            message Foo {
              option message_set_wire_format = true;
              extensions 4 to max;
            }
          Note that the message cannot have any defined fields; MessageSets only
          have extensions.
          All extensions of your type must be singular messages; e.g. they cannot
          be int32s, enums, or repeated messages.
          Because this is an option, the above two restrictions are not enforced by
          the protocol compiler.
    @type bool $no_standard_descriptor_accessor
          Disables the generation of the standard "descriptor()" accessor, which can
          conflict with a field of the same name.  This is meant to make migration
          from proto1 easier; new code should avoid fields named "descriptor".
    @type bool $deprecated
          Is this message deprecated?
          Depending on the target platform, this can emit Deprecated annotations
          for the message, or it will be completely ignored; in the very least,
          this is a formalization for deprecating messages.
    @type bool $map_entry
          Whether the message is an automatically generated map entry type for the
          maps field.
          For maps fields:
              map<KeyType, ValueType> map_field = 1;
          The parsed descriptor looks like:
              message MapFieldEntry {
                  option map_entry = true;
                  optional KeyType key = 1;
                  optional ValueType value = 2;
              }
              repeated MapFieldEntry map_field = 1;
          Implementations may choose not to generate the map_entry=true message, but
          use a native map in the target language to hold the keys and values.
          The reflection APIs in such implementations still need to work as
          if the field is a repeated message field.
          NOTE: Do not set the option in .proto files. Always use the maps syntax
          instead. The option should only be implicitly set by the proto compiler
          parser.
    @type bool $deprecated_legacy_json_field_conflicts
          Enable the legacy handling of JSON field name conflicts.  This lowercases
          and strips underscored from the fields before comparison in proto3 only.
          The new behavior takes `json_name` into account and applies to proto2 as
          well.
          This should only be used as a temporary measure against broken builds due
          to the change in behavior for JSON field name conflicts.
          TODO This is legacy behavior we plan to remove once downstream
          teams have had time to migrate.
    @type \Google\Protobuf\Internal\FeatureSet $features
          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.
    @type \Google\Protobuf\Internal\UninterpretedOption[] $uninterpreted_option
          The parser stores options it doesn't recognize here. See above.
    
    }
public Google\Protobuf\Internal\Message::__debugInfo()
public Google\Protobuf\Internal\Message::byteSize()
 
  • ignore
public Google\Protobuf\Internal\Message::clear()
 

Clear all containing fields.

  • return null
public clearDeprecated()
public clearDeprecatedLegacyJsonFieldConflicts()
public clearFeatures()
public clearMapEntry()
public clearMessageSetWireFormat()
public clearNoStandardDescriptorAccessor()
public Google\Protobuf\Internal\Message::discardUnknownFields()
 

Clear all unknown fields previously parsed.

  • return null
public getDeprecated()
 

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

Generated from protobuf field optional bool deprecated = 3 [default = false];

  • return bool
public getDeprecatedLegacyJsonFieldConflicts()
 

Enable the legacy handling of JSON field name conflicts. This lowercases and strips underscored from the fields before comparison in proto3 only.

The new behavior takes json_name into account and applies to proto2 as well. This should only be used as a temporary measure against broken builds due to the change in behavior for JSON field name conflicts. TODO This is legacy behavior we plan to remove once downstream teams have had time to migrate.

Generated from protobuf field optional bool deprecated_legacy_json_field_conflicts = 11 [deprecated = true];

  • return bool
  • deprecated
public getFeatures()
 

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.

Generated from protobuf field optional .google.protobuf.FeatureSet features = 12;

  • return \Google\Protobuf\Internal\FeatureSet|null
public getMapEntry()
 

Whether the message is an automatically generated map entry type for the maps field.

For maps fields: map<KeyType, ValueType> map_field = 1; The parsed descriptor looks like: message MapFieldEntry { option map_entry = true; optional KeyType key = 1; optional ValueType value = 2; } repeated MapFieldEntry map_field = 1; Implementations may choose not to generate the map_entry=true message, but use a native map in the target language to hold the keys and values. The reflection APIs in such implementations still need to work as if the field is a repeated message field. NOTE: Do not set the option in .proto files. Always use the maps syntax instead. The option should only be implicitly set by the proto compiler parser.

Generated from protobuf field optional bool map_entry = 7;

  • return bool
public getMessageSetWireFormat()
 

Set true to use the old proto1 MessageSet wire format for extensions.

This is provided for backwards-compatibility with the MessageSet wire format. You should not use this for any other reason: It's less efficient, has fewer features, and is more complicated. The message must be defined exactly as follows: message Foo { option message_set_wire_format = true; extensions 4 to max; } Note that the message cannot have any defined fields; MessageSets only have extensions. All extensions of your type must be singular messages; e.g. they cannot be int32s, enums, or repeated messages. Because this is an option, the above two restrictions are not enforced by the protocol compiler.

Generated from protobuf field optional bool message_set_wire_format = 1 [default = false];

  • return bool
public getNoStandardDescriptorAccessor()
 

Disables the generation of the standard "descriptor()" accessor, which can conflict with a field of the same name. This is meant to make migration from proto1 easier; new code should avoid fields named "descriptor".

Generated from protobuf field optional bool no_standard_descriptor_accessor = 2 [default = false];

  • return bool
public getUninterpretedOption()
 

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

Generated from protobuf field repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;

  • return \RepeatedField<\Google\Protobuf\Internal\UninterpretedOption>
public hasDeprecated()
public hasDeprecatedLegacyJsonFieldConflicts()
public hasFeatures()
public hasMapEntry()
public hasMessageSetWireFormat()
public hasNoStandardDescriptorAccessor()
public Google\Protobuf\Internal\Message::jsonByteSize( $options = 0)
 
  • ignore
public Google\Protobuf\Internal\Message::mergeFrom( $msg)
 

Merges the contents of the specified message into current message.

This method merges the contents of the specified message into the current message. Singular fields that are set in the specified message overwrite the corresponding fields in the current message. Repeated fields are appended. Map fields key-value pairs are overwritten. Singular/Oneof sub-messages are recursively merged. All overwritten sub-messages are deep-copied.

  • param object $msg Protobuf message to be merged from.
  • return null
public Google\Protobuf\Internal\Message::mergeFromJsonString( $data, $ignore_unknown = false)
 

Parses a json string to protobuf message.

This function takes a string in the json wire format, matching the encoding output by serializeToJsonString(). See mergeFrom() for merging behavior, if the field is already set in the specified message.

  • param string $data Json protobuf data.
  • param bool $ignore_unknown
  • return null
  • throws \Exception Invalid data.
public Google\Protobuf\Internal\Message::mergeFromString( $data)
 

Parses a protocol buffer contained in a string.

This function takes a string in the (non-human-readable) binary wire format, matching the encoding output by serializeToString(). See mergeFrom() for merging behavior, if the field is already set in the specified message.

  • param string $data Binary protobuf data.
  • return null
  • throws \Exception Invalid data.
public Google\Protobuf\Internal\Message::parseFromJsonStream( $input, $ignore_unknown)
 
  • ignore
public Google\Protobuf\Internal\Message::parseFromStream( $input)
 
  • ignore
public Google\Protobuf\Internal\Message::serializeToJsonStream( $output)
 
  • ignore
public Google\Protobuf\Internal\Message::serializeToJsonString( $options = 0)
 

Serialize the message to json string.

  • return string Serialized json protobuf data.
public Google\Protobuf\Internal\Message::serializeToStream( $output)
 
  • ignore
public Google\Protobuf\Internal\Message::serializeToString()
 

Serialize the message to string.

  • return string Serialized binary protobuf data.
public setDeprecated(bool $var)
 

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

Generated from protobuf field optional bool deprecated = 3 [default = false];

  • param bool $var
  • return $this
public setDeprecatedLegacyJsonFieldConflicts(bool $var)
 

Enable the legacy handling of JSON field name conflicts. This lowercases and strips underscored from the fields before comparison in proto3 only.

The new behavior takes json_name into account and applies to proto2 as well. This should only be used as a temporary measure against broken builds due to the change in behavior for JSON field name conflicts. TODO This is legacy behavior we plan to remove once downstream teams have had time to migrate.

Generated from protobuf field optional bool deprecated_legacy_json_field_conflicts = 11 [deprecated = true];

  • param bool $var
  • return $this
  • deprecated
public setFeatures(?Google\Protobuf\Internal\FeatureSet $var)
 

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.

Generated from protobuf field optional .google.protobuf.FeatureSet features = 12;

  • param \Google\Protobuf\Internal\FeatureSet $var
  • return $this
public setMapEntry(bool $var)
 

Whether the message is an automatically generated map entry type for the maps field.

For maps fields: map<KeyType, ValueType> map_field = 1; The parsed descriptor looks like: message MapFieldEntry { option map_entry = true; optional KeyType key = 1; optional ValueType value = 2; } repeated MapFieldEntry map_field = 1; Implementations may choose not to generate the map_entry=true message, but use a native map in the target language to hold the keys and values. The reflection APIs in such implementations still need to work as if the field is a repeated message field. NOTE: Do not set the option in .proto files. Always use the maps syntax instead. The option should only be implicitly set by the proto compiler parser.

Generated from protobuf field optional bool map_entry = 7;

  • param bool $var
  • return $this
public setMessageSetWireFormat(bool $var)
 

Set true to use the old proto1 MessageSet wire format for extensions.

This is provided for backwards-compatibility with the MessageSet wire format. You should not use this for any other reason: It's less efficient, has fewer features, and is more complicated. The message must be defined exactly as follows: message Foo { option message_set_wire_format = true; extensions 4 to max; } Note that the message cannot have any defined fields; MessageSets only have extensions. All extensions of your type must be singular messages; e.g. they cannot be int32s, enums, or repeated messages. Because this is an option, the above two restrictions are not enforced by the protocol compiler.

Generated from protobuf field optional bool message_set_wire_format = 1 [default = false];

  • param bool $var
  • return $this
public setNoStandardDescriptorAccessor(bool $var)
 

Disables the generation of the standard "descriptor()" accessor, which can conflict with a field of the same name. This is meant to make migration from proto1 easier; new code should avoid fields named "descriptor".

Generated from protobuf field optional bool no_standard_descriptor_accessor = 2 [default = false];

  • param bool $var
  • return $this
public setUninterpretedOption(Google\Protobuf\RepeatedField|array $var)
 

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

Generated from protobuf field repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;

  • param \Google\Protobuf\Internal\UninterpretedOption[] $var
  • return $this
Properties
protected $deprecated = NULL
 

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

Generated from protobuf field optional bool deprecated = 3 [default = false];

protected $deprecated_legacy_json_field_conflicts = NULL
 

Enable the legacy handling of JSON field name conflicts. This lowercases and strips underscored from the fields before comparison in proto3 only.

The new behavior takes json_name into account and applies to proto2 as well. This should only be used as a temporary measure against broken builds due to the change in behavior for JSON field name conflicts. TODO This is legacy behavior we plan to remove once downstream teams have had time to migrate.

Generated from protobuf field optional bool deprecated_legacy_json_field_conflicts = 11 [deprecated = true];

  • deprecated
protected $features = NULL
 

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.

Generated from protobuf field optional .google.protobuf.FeatureSet features = 12;

protected $map_entry = NULL
 

Whether the message is an automatically generated map entry type for the maps field.

For maps fields: map<KeyType, ValueType> map_field = 1; The parsed descriptor looks like: message MapFieldEntry { option map_entry = true; optional KeyType key = 1; optional ValueType value = 2; } repeated MapFieldEntry map_field = 1; Implementations may choose not to generate the map_entry=true message, but use a native map in the target language to hold the keys and values. The reflection APIs in such implementations still need to work as if the field is a repeated message field. NOTE: Do not set the option in .proto files. Always use the maps syntax instead. The option should only be implicitly set by the proto compiler parser.

Generated from protobuf field optional bool map_entry = 7;

protected $message_set_wire_format = NULL
 

Set true to use the old proto1 MessageSet wire format for extensions.

This is provided for backwards-compatibility with the MessageSet wire format. You should not use this for any other reason: It's less efficient, has fewer features, and is more complicated. The message must be defined exactly as follows: message Foo { option message_set_wire_format = true; extensions 4 to max; } Note that the message cannot have any defined fields; MessageSets only have extensions. All extensions of your type must be singular messages; e.g. they cannot be int32s, enums, or repeated messages. Because this is an option, the above two restrictions are not enforced by the protocol compiler.

Generated from protobuf field optional bool message_set_wire_format = 1 [default = false];

protected $no_standard_descriptor_accessor = NULL
 

Disables the generation of the standard "descriptor()" accessor, which can conflict with a field of the same name. This is meant to make migration from proto1 easier; new code should avoid fields named "descriptor".

Generated from protobuf field optional bool no_standard_descriptor_accessor = 2 [default = false];

Methods
protected Google\Protobuf\Internal\Message::hasOneof( $number)
protected Google\Protobuf\Internal\Message::mergeFromArray(array $array)
 

Populates the message from a user-supplied PHP array. Array keys correspond to Message properties and nested message properties.

Example:

$message->mergeFromArray([
    'name' => 'This is a message name',
    'interval' => [
         'startTime' => time() - 60,
         'endTime' => time(),
    ]
]);

This method will trigger an error if it is passed data that cannot be converted to the correct type. For example, a StringValue field must receive data that is either a string or a StringValue object.

  • param array $array An array containing message properties and values.
  • return null
protected Google\Protobuf\Internal\Message::mergeFromJsonArray( $array, $ignore_unknown)
protected Google\Protobuf\Internal\Message::readOneof( $number)
protected Google\Protobuf\Internal\Message::readWrapperValue( $member)
protected Google\Protobuf\Internal\Message::whichOneof( $oneof_name)
protected Google\Protobuf\Internal\Message::writeOneof( $number, $value)
protected Google\Protobuf\Internal\Message::writeWrapperValue( $member, $value)
Properties
private $uninterpreted_option = NULL
 

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

Generated from protobuf field repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;

© 2026 Bruce Wells
Search Namespaces \ Classes
Configuration