pub struct ProtocolAttachment {
pub protocol_id: String,
pub payload: Vec<u8>,
/* private fields */
}Expand description
Transport-specific metadata envelope on contract and entity nodes.
protocol_id is a stable slug (“http”, “grpc”, or a custom id). payload bytes encode exactly one arm of a protocol-package top-level oneof (HttpPayload or GrpcPayload in canardleteer.switchback.protocol.{http,grpc}.v1alpha1). The core schema does not import those packages — decode by protocol_id.
Fields§
§protocol_id: StringProtocol slug; built-in values are “http” and “grpc”.
Field 1: protocol_id
payload: Vec<u8>Serialized HttpPayload or GrpcPayload oneof (see ADR 0011 entity matrix).
Field 2: payload
Implementations§
Trait Implementations§
Source§impl Clone for ProtocolAttachment
impl Clone for ProtocolAttachment
Source§fn clone(&self) -> ProtocolAttachment
fn clone(&self) -> ProtocolAttachment
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ProtocolAttachment
impl Debug for ProtocolAttachment
Source§impl Default for ProtocolAttachment
impl Default for ProtocolAttachment
Source§fn default() -> ProtocolAttachment
fn default() -> ProtocolAttachment
Returns the “default value” for a type. Read more
Source§impl DefaultInstance for ProtocolAttachment
impl DefaultInstance for ProtocolAttachment
Source§fn default_instance() -> &'static Self
fn default_instance() -> &'static Self
Return a reference to the single default instance of this type.
Source§impl ExtensionSet for ProtocolAttachment
impl ExtensionSet for ProtocolAttachment
Source§const PROTO_FQN: &'static str = "canardleteer.switchback.v1alpha1.ProtocolAttachment"
const PROTO_FQN: &'static str = "canardleteer.switchback.v1alpha1.ProtocolAttachment"
Fully-qualified proto type name of this message (no leading dot),
e.g.
"google.protobuf.FieldOptions". Read moreSource§fn unknown_fields(&self) -> &UnknownFields
fn unknown_fields(&self) -> &UnknownFields
Immutable access to the extendee’s unknown-field storage.
Source§fn unknown_fields_mut(&mut self) -> &mut UnknownFields
fn unknown_fields_mut(&mut self) -> &mut UnknownFields
Mutable access to the extendee’s unknown-field storage.
Source§fn extension<C>(&self, ext: &Extension<C>) -> <C as ExtensionCodec>::Outputwhere
C: ExtensionCodec,
fn extension<C>(&self, ext: &Extension<C>) -> <C as ExtensionCodec>::Outputwhere
C: ExtensionCodec,
Read an extension value. Read more
Source§fn set_extension<C>(
&mut self,
ext: &Extension<C>,
value: <C as ExtensionCodec>::Value,
)where
C: ExtensionCodec,
fn set_extension<C>(
&mut self,
ext: &Extension<C>,
value: <C as ExtensionCodec>::Value,
)where
C: ExtensionCodec,
Write an extension value, replacing any prior occurrences. Read more
Source§fn has_extension<C>(&self, ext: &Extension<C>) -> boolwhere
C: ExtensionCodec,
fn has_extension<C>(&self, ext: &Extension<C>) -> boolwhere
C: ExtensionCodec,
Returns
true if any record at the extension’s field number is present. Read moreSource§fn clear_extension<C>(&mut self, ext: &Extension<C>)where
C: ExtensionCodec,
fn clear_extension<C>(&mut self, ext: &Extension<C>)where
C: ExtensionCodec,
Remove all records at the extension’s field number. Read more
Source§fn extension_or_default<C>(
&self,
ext: &Extension<C>,
) -> <C as ExtensionCodec>::Valuewhere
C: ExtensionCodec<Output = Option<<C as ExtensionCodec>::Value>>,
<C as ExtensionCodec>::Value: Default,
fn extension_or_default<C>(
&self,
ext: &Extension<C>,
) -> <C as ExtensionCodec>::Valuewhere
C: ExtensionCodec<Output = Option<<C as ExtensionCodec>::Value>>,
<C as ExtensionCodec>::Value: Default,
Read a singular extension value, returning the proto2
[default = ...]
value if absent, or the type’s Default if no proto default was declared. Read moreSource§impl Message for ProtocolAttachment
impl Message for ProtocolAttachment
Source§fn compute_size(&self, _cache: &mut SizeCache) -> u32
fn compute_size(&self, _cache: &mut SizeCache) -> u32
Returns the total encoded size in bytes.
The result is a u32; the protobuf specification requires all
messages to fit within 2 GiB (2,147,483,647 bytes), so a
compliant message will never overflow this type.
Source§fn write_to(&self, _cache: &mut SizeCache, buf: &mut impl BufMut)
fn write_to(&self, _cache: &mut SizeCache, buf: &mut impl BufMut)
Write this message’s encoded bytes to a buffer, consuming
nested-message sizes from
cache (populated by a prior
compute_size call on the same cache). Read moreSource§fn merge_field(
&mut self,
tag: Tag,
buf: &mut impl Buf,
depth: u32,
) -> Result<(), DecodeError>
fn merge_field( &mut self, tag: Tag, buf: &mut impl Buf, depth: u32, ) -> Result<(), DecodeError>
Processes a single already-decoded tag and its associated field data
from
buf. Read moreSource§fn encode(&self, buf: &mut impl BufMut)
fn encode(&self, buf: &mut impl BufMut)
Compute size, then write. This is the primary encoding API.
Source§fn encode_with_cache(&self, cache: &mut SizeCache, buf: &mut impl BufMut)
fn encode_with_cache(&self, cache: &mut SizeCache, buf: &mut impl BufMut)
Encode using a caller-supplied
SizeCache, for
reuse across many encodes in a hot loop. Clears the cache first.Source§fn encoded_len(&self) -> u32
fn encoded_len(&self) -> u32
Compute the encoded byte size of this message. Read more
Source§fn encode_length_delimited(&self, buf: &mut impl BufMut)
fn encode_length_delimited(&self, buf: &mut impl BufMut)
Encode this message as a length-delimited byte sequence.
Source§fn encode_to_bytes(&self) -> Bytes
fn encode_to_bytes(&self) -> Bytes
Encode this message to a new
bytes::Bytes. Read moreSource§fn decode(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
fn decode(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
Decode a message from a buffer.
Source§fn decode_from_slice(data: &[u8]) -> Result<Self, DecodeError>where
Self: Sized,
fn decode_from_slice(data: &[u8]) -> Result<Self, DecodeError>where
Self: Sized,
Decode a message from a byte slice. Read more
Source§fn decode_length_delimited(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
fn decode_length_delimited(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
Decode a length-delimited message from a buffer. Read more
Source§fn merge_to_limit(
&mut self,
buf: &mut impl Buf,
depth: u32,
limit: usize,
) -> Result<(), DecodeError>
fn merge_to_limit( &mut self, buf: &mut impl Buf, depth: u32, limit: usize, ) -> Result<(), DecodeError>
Source§fn merge_group(
&mut self,
buf: &mut impl Buf,
depth: u32,
field_number: u32,
) -> Result<(), DecodeError>
fn merge_group( &mut self, buf: &mut impl Buf, depth: u32, field_number: u32, ) -> Result<(), DecodeError>
Merges a group-encoded message from
buf, reading fields until an
EndGroup tag with the given field_number is encountered. Read moreSource§fn merge(&mut self, buf: &mut impl Buf, depth: u32) -> Result<(), DecodeError>
fn merge(&mut self, buf: &mut impl Buf, depth: u32) -> Result<(), DecodeError>
Merge fields from a buffer into this message. Read more
Source§fn merge_from_slice(&mut self, data: &[u8]) -> Result<(), DecodeError>
fn merge_from_slice(&mut self, data: &[u8]) -> Result<(), DecodeError>
Merge fields from a byte slice into this message. Read more
Source§fn merge_length_delimited(
&mut self,
buf: &mut impl Buf,
depth: u32,
) -> Result<(), DecodeError>
fn merge_length_delimited( &mut self, buf: &mut impl Buf, depth: u32, ) -> Result<(), DecodeError>
Merge fields from a length-delimited sub-message payload into this message. Read more
Source§impl MessageName for ProtocolAttachment
impl MessageName for ProtocolAttachment
Source§const PACKAGE: &'static str = "canardleteer.switchback.v1alpha1"
const PACKAGE: &'static str = "canardleteer.switchback.v1alpha1"
The protobuf package the message is declared in. Read more
Source§const NAME: &'static str = "ProtocolAttachment"
const NAME: &'static str = "ProtocolAttachment"
The unqualified message name, with
. between nesting levels. Read moreSource§impl PartialEq for ProtocolAttachment
impl PartialEq for ProtocolAttachment
Source§fn eq(&self, other: &ProtocolAttachment) -> bool
fn eq(&self, other: &ProtocolAttachment) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ProtocolAttachment
Auto Trait Implementations§
impl Freeze for ProtocolAttachment
impl RefUnwindSafe for ProtocolAttachment
impl Send for ProtocolAttachment
impl Sync for ProtocolAttachment
impl Unpin for ProtocolAttachment
impl UnsafeUnpin for ProtocolAttachment
impl UnwindSafe for ProtocolAttachment
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more