class documentation

Undocumented

Class CType No class docstring; 2/3 constants documented
Class EditionDefault No class docstring; 1/2 property, 3/3 methods documented
Class FeatureSupport Information about the support window of a feature.
Class JSType No class docstring; 3/3 constants documented
Class OptionRetention If set to RETENTION_SOURCE, the option will be omitted from the binary.
Class OptionTargetType This indicates the types of entities that the field may apply to when used as an option. If it is unset, then the field may be freely used as an option on any kind of entity.
Method __init__ Create a message from a source message and field values.
Method ctype.setter Set or clear the generated ctype field.
Method debug_redact.setter Set or clear the generated debug_redact field.
Method deprecated.setter Set or clear the generated deprecated field.
Method edition_defaults.setter Set or clear the generated edition_defaults field.
Method feature_support.setter Set or clear the generated feature_support field.
Method features.setter Set or clear the generated features field.
Method jstype.setter Set or clear the generated jstype field.
Method lazy.setter Set or clear the generated lazy field.
Method packed.setter Set or clear the generated packed field.
Method retention.setter Set or clear the generated retention field.
Method targets.setter Set or clear the generated targets field.
Method uninterpreted_option.setter Set or clear the generated uninterpreted_option field.
Method unverified_lazy.setter Set or clear the generated unverified_lazy field.
Method weak.setter Set or clear the generated weak field.
Property ctype NOTE: ctype is deprecated. Use features.(pb.cpp).string_type instead. The ctype option instructs the C++ code generator to use a different representation of the field than it normally would. See the specific options below...
Property debug_redact Indicate that the field value should not be printed out when using debug formats, e.g. when the field contains sensitive credentials.
Property deprecated Is this field deprecated? Depending on the target platform, this can emit Deprecated annotations for accessors, or it will be completely ignored; in the very least, this is a formalization for deprecating fields.
Property edition_defaults Undocumented
Property feature_support Undocumented
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 jstype The jstype option determines the JavaScript type used for values of the field. The option is permitted only for 64 bit integral and fixed types (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING is represented as JavaScript string, which avoids loss of precision that can happen when a large value is converted to a floating point JavaScript...
Property lazy Should this field be parsed lazily? Lazy applies only to message-type fields. It means that when the outer message is initially parsed, the inner message's contents will not be parsed but instead stored in encoded form...
Property packed The packed option can be enabled for repeated primitive fields to enable a more efficient representation on the wire. Rather than repeatedly writing the tag and type for each element, the entire array is encoded as a single length-delimited blob...
Property retention Undocumented
Property targets Undocumented
Property uninterpreted_option The parser stores options it doesn't recognize here. See above.
Property unverified_lazy unverified_lazy does no correctness checks on the byte stream. This should only be used where lazy with verification is prohibitive for performance reasons.
Property weak DEPRECATED. DO NOT USE! For Google-internal migration only. Do not use.

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, *, ctype: CType | None | UnsetType = ..., packed: bool | None | UnsetType = ..., jstype: JSType | None | UnsetType = ..., lazy: bool | None | UnsetType = ..., unverified_lazy: bool | None | UnsetType = ..., deprecated: bool | None | UnsetType = ..., weak: bool | None | UnsetType = ..., debug_redact: bool | None | UnsetType = ..., retention: OptionRetention | None | UnsetType = ..., targets: Iterable[OptionTargetType] | None | UnsetType = ..., edition_defaults: Iterable[EditionDefault] | None | UnsetType = ..., features: FeatureSet | None | UnsetType = ..., feature_support: FeatureSupport | None | UnsetType = ..., uninterpreted_option: Iterable[UninterpretedOption] | None | UnsetType = ...): (source)

Create a message from a source message and field values.

@ctype.setter
def ctype(self, value: CType | None): (source)

Set or clear the generated ctype field.

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

Set or clear the generated debug_redact field.

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

Set or clear the generated deprecated field.

@edition_defaults.setter
def edition_defaults(self, value: Iterable[EditionDefault] | None): (source)

Set or clear the generated edition_defaults field.

@feature_support.setter
def feature_support(self, value: FeatureSupport | None): (source)

Set or clear the generated feature_support field.

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

Set or clear the generated features field.

@jstype.setter
def jstype(self, value: JSType | None): (source)

Set or clear the generated jstype field.

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

Set or clear the generated lazy field.

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

Set or clear the generated packed field.

@retention.setter
def retention(self, value: OptionRetention | None): (source)

Set or clear the generated retention field.

Set or clear the generated targets field.

Set or clear the generated uninterpreted_option field.

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

Set or clear the generated unverified_lazy field.

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

Set or clear the generated weak field.

NOTE: ctype is deprecated. Use features.(pb.cpp).string_type instead. The ctype option instructs the C++ code generator to use a different representation of the field than it normally would. See the specific options below. This option is only implemented to support use of [ctype=CORD] and [ctype=STRING] (the default) on non-repeated fields of type "bytes" in the open source release.

@property
debug_redact: bool = (source)

Indicate that the field value should not be printed out when using debug formats, e.g. when the field contains sensitive credentials.

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

Undocumented

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.

The jstype option determines the JavaScript type used for values of the field. The option is permitted only for 64 bit integral and fixed types (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING is represented as JavaScript string, which avoids loss of precision that can happen when a large value is converted to a floating point JavaScript. Specifying JS_NUMBER for the jstype causes the generated JavaScript code to use the JavaScript "number" type. The behavior of the default option JS_NORMAL is implementation dependent.

This option is an enum to permit additional types to be added, e.g. goog.math.Integer.

Should this field be parsed lazily? Lazy applies only to message-type fields. It means that when the outer message is initially parsed, the inner message's contents will not be parsed but instead stored in encoded form. The inner message will actually be parsed when it is first accessed.

This is only a hint. Implementations are free to choose whether to use eager or lazy parsing regardless of the value of this option. However, setting this option true suggests that the protocol author believes that using lazy parsing on this field is worth the additional bookkeeping overhead typically needed to implement it.

This option does not affect the public interface of any generated code; all method signatures remain the same. Furthermore, thread-safety of the interface is not affected by this option; const methods remain safe to call from multiple threads concurrently, while non-const methods continue to require exclusive access.

Note that lazy message fields are still eagerly verified to check ill-formed wireformat or missing required fields. Calling IsInitialized() on the outer message would fail if the inner message has missing required fields. Failed verification would result in parsing failure (except when uninitialized messages are acceptable).

The packed option can be enabled for repeated primitive fields to enable a more efficient representation on the wire. Rather than repeatedly writing the tag and type for each element, the entire array is encoded as a single length-delimited blob. In proto3, only explicit setting it to false will avoid using packed encoding. This option is prohibited in Editions, but the repeated_field_encoding feature can be used to control the behavior.

Undocumented

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

@property
unverified_lazy: bool = (source)

unverified_lazy does no correctness checks on the byte stream. This should only be used where lazy with verification is prohibitive for performance reasons.

DEPRECATED. DO NOT USE! For Google-internal migration only. Do not use.

Deprecated.