pub struct TypeOwnedView(/* private fields */);Expand description
Self-contained, 'static owned view of a Type message.
Wraps ::buffa::OwnedView<TypeView<'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 TypeView when you need struct patterns, iteration helpers, or to pass the view to lifetime-parameterised code.
Implementations§
Source§impl TypeOwnedView
impl TypeOwnedView
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: &Type) -> Result<Self, DecodeError>
pub fn from_owned(msg: &Type) -> 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 to_owned_message(&self) -> Type
pub fn to_owned_message(&self) -> Type
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 fields(&self) -> &RepeatedView<'_, FieldView<'_>>
pub fn fields(&self) -> &RepeatedView<'_, FieldView<'_>>
The list of fields.
Field 2: fields
Sourcepub fn oneofs(&self) -> &RepeatedView<'_, &str>
pub fn oneofs(&self) -> &RepeatedView<'_, &str>
The list of types appearing in oneof definitions in this type.
Field 3: oneofs
Sourcepub fn options(&self) -> &RepeatedView<'_, OptionView<'_>>
pub fn options(&self) -> &RepeatedView<'_, OptionView<'_>>
The protocol buffer options.
Field 4: options
Sourcepub fn source_context(&self) -> &MessageFieldView<SourceContextView<'_>>
pub fn source_context(&self) -> &MessageFieldView<SourceContextView<'_>>
The source context.
Field 5: source_context
Trait Implementations§
Source§impl Clone for TypeOwnedView
impl Clone for TypeOwnedView
Source§fn clone(&self) -> TypeOwnedView
fn clone(&self) -> TypeOwnedView
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more