class FieldOptions(Message): (source)
Constructor: FieldOptions(initial_message, ctype, packed, jstype, ...)
Undocumented
| Class | |
No class docstring; 2/3 constants documented |
| Class | |
No class docstring; 1/2 property, 3/3 methods documented |
| Class | |
Information about the support window of a feature. |
| Class | |
No class docstring; 3/3 constants documented |
| Class | |
If set to RETENTION_SOURCE, the option will be omitted from the binary. |
| Class | |
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 |
Set or clear the generated ctype field. |
| Method | debug |
Set or clear the generated debug_redact field. |
| Method | deprecated |
Set or clear the generated deprecated field. |
| Method | edition |
Set or clear the generated edition_defaults field. |
| Method | feature |
Set or clear the generated feature_support field. |
| Method | features |
Set or clear the generated features field. |
| Method | jstype |
Set or clear the generated jstype field. |
| Method | lazy |
Set or clear the generated lazy field. |
| Method | packed |
Set or clear the generated packed field. |
| Method | retention |
Set or clear the generated retention field. |
| Method | targets |
Set or clear the generated targets field. |
| Method | uninterpreted |
Set or clear the generated uninterpreted_option field. |
| Method | unverified |
Set or clear the generated unverified_lazy field. |
| Method | weak |
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 |
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 |
Undocumented |
| Property | feature |
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 |
The parser stores options it doesn't recognize here. See above. |
| Property | unverified |
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 |
Create a message from protobuf JSON mapping. |
| Class Method | |
Create a message by parsing protobuf wire-format bytes. |
| Class Method | get |
Return the message descriptor from the registry. |
| Class Method | is |
Return True if a Python field contains credentials. |
| Class Method | is |
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 | |
Return the serialized protobuf wire size in bytes. |
| Method | check |
Check presence using a generated Python field name. |
| Method | |
Clear all fields, extensions, unknown fields, and the reset mask. |
| Method | clear |
Clear an extension value. |
| Method | |
Clear a protobuf field or oneof and record it in the reset mask. |
| Method | |
Replace this message with an independent copy of another message. |
| Method | |
Return paths of missing required fields. |
| Method | get |
Return an extension value. |
| Method | get |
Create a reset mask from the current protobuf state. |
| Method | get |
Return the reset mask for field changes. |
| Method | has |
Return True if an extension has explicit presence. |
| Method | |
Return True if a protobuf field or oneof has explicit presence. |
| Method | is |
Return True if a generated field has its default value. |
| Method | |
Return True if every required field is initialized. |
| Method | |
Merge fields from another message of the same generated type. |
| Method | |
Merge protobuf wire-format bytes into this message. |
| Method | |
Parse protobuf wire-format bytes and replace this message. |
| Method | |
Serialize the message using protobuf wire format. |
| Method | set |
Set an extension value. |
| Method | set |
Set the reset mask for this message. |
| Method | to |
Serialize this message using protobuf JSON mapping. |
| Method | which |
Return the selected Python field name for a protobuf oneof. |
| Method | |
Return the selected protobuf field name for a oneof. |
| Constant | __DEPRECATION |
Undocumented |
| Constant | __EXTENSION |
Registry that decodes protobuf extensions. |
| Constant | __FIELDS__ |
Runtime field data that the generator creates. |
| Constant | __MAX |
Maximum protobuf nesting depth for serialization, parsing, and initialization checks. |
| Constant | __PB2 |
Alias for code that expects a protobuf descriptor. |
| Constant | __PROTO |
Message descriptor from the registry. |
| Constant | __PY |
Mapping from Python names to protobuf names. |
| Constant | __REGISTRY__ |
Registry for the message and its descriptor. |
| Class Variable | __PROTO |
Fully qualified protobuf message name. |
| Property | |
Provide protobuf-compatible mapping access to extension values. |
| Class Method | _fields |
Undocumented |
| Class Method | _fields |
Undocumented |
| Class Method | _fields |
Undocumented |
| Class Method | _from |
Deserialize internally without invoking generated user warnings. |
| Class Method | _oneof |
Undocumented |
| Class Method | _public |
Undocumented |
| Class Method | _public |
Undocumented |
| Static Method | _format |
Undocumented |
| Static Method | _repr |
Undocumented |
| Method | _bind |
Undocumented |
| Method | _bind |
Undocumented |
| Method | _check |
Undocumented |
| Method | _child |
Undocumented |
| Method | _clear |
Undocumented |
| Method | _closed |
Undocumented |
| Method | _converted |
Undocumented |
| Method | _decode |
Undocumented |
| Method | _detach |
Undocumented |
| Method | _field |
Undocumented |
| Method | _field |
Undocumented |
| Method | _find |
Undocumented |
| Method | _get |
Undocumented |
| Method | _initialize |
Initialize message state, optionally suppressing generated warnings. |
| Method | _map |
Undocumented |
| Method | _merge |
Undocumented |
| Method | _nesting |
Undocumented |
| Method | _notify |
Undocumented |
| Method | _record |
Undocumented |
| Method | _repeated |
Undocumented |
| Method | _select |
Undocumented |
| Method | _serialize |
Undocumented |
| Method | _set |
Undocumented |
| Method | _suspend |
Undocumented |
| Method | _suspend |
Undocumented |
| Method | _try |
Undocumented |
| Method | _write |
Undocumented |
| Instance Variable | _extensions |
Undocumented |
| Instance Variable | _mutation |
Undocumented |
| Instance Variable | _on |
Undocumented |
| Instance Variable | _oneofs |
Undocumented |
| Instance Variable | _present |
Undocumented |
| Instance Variable | _reset |
Undocumented |
| Instance Variable | _reset |
Undocumented |
| Instance Variable | _unknown |
Undocumented |
| Instance Variable | _values |
Undocumented |
| Instance Variable | _views |
Undocumented |
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.
def edition_defaults(self, value:
Iterable[ EditionDefault] | None):
(source)
¶
Set or clear the generated edition_defaults field.
def uninterpreted_option(self, value:
Iterable[ UninterpretedOption] | None):
(source)
¶
Set or clear the generated uninterpreted_option 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.
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.
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.