pub struct OptionOwnedView(/* private fields */);Expand description
Self-contained, 'static owned view of a Option message.
Wraps ::buffa::OwnedView<OptionView<'static>>: the decoded view and the ::buffa::bytes::Bytes buffer it borrows from travel together, so the handle is 'static and Send + Sync — suitable for async handlers, spawned tasks, and anywhere a 'static bound is required.
Field accessors return borrows tied to &self. Use Self::view to get the full OptionView when you need struct patterns, iteration helpers, or to pass the view to lifetime-parameterised code.
Implementations§
Source§impl OptionOwnedView
impl OptionOwnedView
Sourcepub fn decode(bytes: Bytes) -> Result<Self, DecodeError>
pub fn decode(bytes: Bytes) -> Result<Self, DecodeError>
Decode an owned view from a ::buffa::bytes::Bytes buffer.
The view borrows directly from the buffer’s data; the buffer is retained inside the returned handle.
§Errors
Returns ::buffa::DecodeError if the buffer contains invalid
protobuf data.
Sourcepub fn decode_with_options(
bytes: Bytes,
opts: &DecodeOptions,
) -> Result<Self, DecodeError>
pub fn decode_with_options( bytes: Bytes, opts: &DecodeOptions, ) -> Result<Self, DecodeError>
Decode with custom ::buffa::DecodeOptions (recursion limit,
max message size).
§Errors
Returns ::buffa::DecodeError if the buffer is invalid or
exceeds the configured limits.
Sourcepub fn from_owned(msg: &Option) -> Result<Self, DecodeError>
pub fn from_owned(msg: &Option) -> Result<Self, DecodeError>
Build from an owned message via an encode → decode round-trip.
§Errors
Returns ::buffa::DecodeError::MessageTooLarge if the
message’s encoded size exceeds the 2 GiB protobuf limit, or
another ::buffa::DecodeError if the re-encoded bytes are
somehow invalid (should not happen for well-formed messages).
Sourcepub fn view(&self) -> &OptionView<'_>
pub fn view(&self) -> &OptionView<'_>
Borrow the full OptionView with its lifetime tied to &self.
Sourcepub fn to_owned_message(&self) -> Option
pub fn to_owned_message(&self) -> Option
Convert to the owned message type.
Infallible: this type’s constructors wire-decode their
buffer, and a view produced by wire decoding always
converts. Delegates to ::buffa::OwnedView::to_owned_message,
whose contract also governs handles converted from a raw
::buffa::OwnedView.
Sourcepub fn into_bytes(self) -> Bytes
pub fn into_bytes(self) -> Bytes
Consume the handle, returning the underlying bytes buffer.
Sourcepub fn name(&self) -> &str
pub fn name(&self) -> &str
The option’s name. For protobuf built-in options (options defined in
descriptor.proto), this is the short name. For example, "map_entry".
For custom options, it should be the fully-qualified name. For example,
"google.api.http".
Field 1: name
Sourcepub fn value(&self) -> &MessageFieldView<AnyView<'_>>
pub fn value(&self) -> &MessageFieldView<AnyView<'_>>
The option’s value packed in an Any message. If the value is a primitive, the corresponding wrapper type defined in google/protobuf/wrappers.proto should be used. If the value is an enum, it should be stored as an int32 value using the google.protobuf.Int32Value type.
Field 2: value
Trait Implementations§
Source§impl AsRef<OwnedView<OptionView<'static>>> for OptionOwnedView
impl AsRef<OwnedView<OptionView<'static>>> for OptionOwnedView
Source§fn as_ref(&self) -> &OwnedView<OptionView<'static>>
fn as_ref(&self) -> &OwnedView<OptionView<'static>>
Source§impl Clone for OptionOwnedView
impl Clone for OptionOwnedView
Source§fn clone(&self) -> OptionOwnedView
fn clone(&self) -> OptionOwnedView
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more