class documentation

Undocumented

Method __init__ Create a message from a source message and field values.
Method deprecated.setter Set or clear the generated deprecated field.
Method deprecated_legacy_json_field_conflicts.setter Set or clear the generated deprecated_legacy_json_field_conflicts field.
Method features.setter Set or clear the generated features field.
Method map_entry.setter Set or clear the generated map_entry field.
Method message_set_wire_format.setter Set or clear the generated message_set_wire_format field.
Method no_standard_descriptor_accessor.setter Set or clear the generated no_standard_descriptor_accessor field.
Method uninterpreted_option.setter Set or clear the generated uninterpreted_option field.
Property 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.
Property 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.
Property 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.
Property map_entry Whether the message is an automatically generated map entry type for the maps field.
Property 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.
Property 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".
Property uninterpreted_option The parser stores options it doesn't recognize here. See above.

Inherited from Message:

Class Method from_json Create a message from protobuf JSON mapping.
Class Method FromString Create a message by parsing protobuf wire-format bytes.
Class Method get_descriptor Return the message descriptor from the registry.
Class Method is_credentials Return True if a Python field contains credentials.
Class Method is_sensitive Return True if a Python field has the sensitive annotation.
Method __dir__ List generated fields, oneofs, and nested declarations.
Method __repr__ Render non-default fields without disclosing annotated secrets.
Method ByteSize Return the serialized protobuf wire size in bytes.
Method check_presence Check presence using a generated Python field name.
Method Clear Clear all fields, extensions, unknown fields, and the reset mask.
Method clear_extension Clear an extension value.
Method ClearField Clear a protobuf field or oneof and record it in the reset mask.
Method CopyFrom Replace this message with an independent copy of another message.
Method FindInitializationErrors Return paths of missing required fields.
Method get_extension Return an extension value.
Method get_full_update_reset_mask Create a reset mask from the current protobuf state.
Method get_mask Return the reset mask for field changes.
Method has_extension Return True if an extension has explicit presence.
Method HasField Return True if a protobuf field or oneof has explicit presence.
Method is_default Return True if a generated field has its default value.
Method IsInitialized Return True if every required field is initialized.
Method MergeFrom Merge fields from another message of the same generated type.
Method MergeFromString Merge protobuf wire-format bytes into this message.
Method ParseFromString Parse protobuf wire-format bytes and replace this message.
Method SerializeToString Serialize the message using protobuf wire format.
Method set_extension Set an extension value.
Method set_mask Set the reset mask for this message.
Method to_json Serialize this message using protobuf JSON mapping.
Method which_field_in_oneof Return the selected Python field name for a protobuf oneof.
Method WhichOneof Return the selected protobuf field name for a oneof.
Constant __DEPRECATION_DETAILS__ Undocumented
Constant __EXTENSION_REGISTRY__ Registry that decodes protobuf extensions.
Constant __FIELDS__ Runtime field data that the generator creates.
Constant __MAX_NESTING_DEPTH__ Maximum protobuf nesting depth for serialization, parsing, and initialization checks.
Constant __PB2_DESCRIPTOR__ Alias for code that expects a protobuf descriptor.
Constant __PROTO_DESCRIPTOR__ Message descriptor from the registry.
Constant __PY_TO_PB2__ Mapping from Python names to protobuf names.
Constant __REGISTRY__ Registry for the message and its descriptor.
Class Variable __PROTO_FULL_NAME__ Fully qualified protobuf message name.
Property Extensions Provide protobuf-compatible mapping access to extension values.
Class Method _fields_by_number Undocumented
Class Method _fields_by_proto_name Undocumented
Class Method _fields_by_python_name Undocumented
Class Method _from_string Deserialize internally without invoking generated user warnings.
Class Method _oneof_python_name Undocumented
Class Method _public_fields_by_proto_name Undocumented
Class Method _public_fields_by_python_name Undocumented
Static Method _format_map_key Undocumented
Static Method _repr_field Undocumented
Method _bind_child Undocumented
Method _bind_mutation Undocumented
Method _check_same_type Undocumented
Method _child_changed Undocumented
Method _clear_state Undocumented
Method _closed_enum_unknown Undocumented
Method _converted_view Undocumented
Method _decode_map_entry Undocumented
Method _detach_child Undocumented
Method _field_has_value Undocumented
Method _field_is_default Undocumented
Method _find_initialization_errors Undocumented
Method _get_field Undocumented
Method _initialize Initialize message state, optionally suppressing generated warnings.
Method _map Undocumented
Method _merge_from_string Undocumented
Method _nesting_limit Undocumented
Method _notify Undocumented
Method _record_reset Undocumented
Method _repeated Undocumented
Method _select Undocumented
Method _serialize_to_string Undocumented
Method _set_field Undocumented
Method _suspend_mutation Undocumented
Method _suspend_reset_mask Undocumented
Method _try_decode_field Undocumented
Method _write_field Undocumented
Instance Variable _extensions Undocumented
Instance Variable _mutation_suspended Undocumented
Instance Variable _on_mutation Undocumented
Instance Variable _oneofs Undocumented
Instance Variable _present Undocumented
Instance Variable _reset_mask Undocumented
Instance Variable _reset_mask_suspended Undocumented
Instance Variable _unknown_fields Undocumented
Instance Variable _values Undocumented
Instance Variable _views Undocumented
def __init__(self, initial_message: SerializableMessage | None = None, *, message_set_wire_format: bool | None | UnsetType = ..., no_standard_descriptor_accessor: bool | None | UnsetType = ..., deprecated: bool | None | UnsetType = ..., map_entry: bool | None | UnsetType = ..., deprecated_legacy_json_field_conflicts: bool | None | UnsetType = ..., features: FeatureSet | None | UnsetType = ..., uninterpreted_option: Iterable[UninterpretedOption] | None | UnsetType = ...): (source)

Create a message from a source message and field values.

@deprecated.setter
def deprecated(self, value: bool | None): (source)

Set or clear the generated deprecated field.

@deprecated_legacy_json_field_conflicts.setter
def deprecated_legacy_json_field_conflicts(self, value: bool | None): (source)

Set or clear the generated deprecated_legacy_json_field_conflicts field.

@features.setter
def features(self, value: FeatureSet | None): (source)

Set or clear the generated features field.

@map_entry.setter
def map_entry(self, value: bool | None): (source)

Set or clear the generated map_entry field.

@message_set_wire_format.setter
def message_set_wire_format(self, value: bool | None): (source)

Set or clear the generated message_set_wire_format field.

@no_standard_descriptor_accessor.setter
def no_standard_descriptor_accessor(self, value: bool | None): (source)

Set or clear the generated no_standard_descriptor_accessor field.

Set or clear the generated uninterpreted_option field.

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.

@property
deprecated_legacy_json_field_conflicts: bool = (source)

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.

teams have had time to migrate.

Deprecated.

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.

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.

@property
message_set_wire_format: bool = (source)

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.

@property
no_standard_descriptor_accessor: bool = (source)

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

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