Skip to main content

ValueWirePayloadV1

Struct ValueWirePayloadV1 

Source
pub struct ValueWirePayloadV1 { /* private fields */ }
Expand description

Typed V1 scalar-or-collection payload without an enclosing version field.

§Resource limits

The generic Deserialize implementation is intended for already-bounded embedded documents and does not enforce message-size or structural limits. Use ValueWirePayloadV1::decode_json_slice or ValueWirePayloadV1::decode_json_slice_with_limits for untrusted complete JSON input.

Implementations§

Source§

impl ValueWirePayloadV1

Source

pub fn decode_json_slice(input: &[u8]) -> Result<Self, ValueWireDecodeError>

Decodes a complete V1 JSON payload using default resource limits.

Prefer this entry point when the payload itself is the complete untrusted document. Embedded protocols should share one budget across all payloads in their complete document.

§Errors

Returns a limit error when the input or decoded structure is too large, or ValueWireDecodeError::InvalidJson for malformed input.

Source

pub fn decode_json_slice_with_limits( input: &[u8], limits: WireLimits, ) -> Result<Self, ValueWireDecodeError>

Decodes a complete V1 JSON payload using explicit resource limits.

§Errors

Returns a limit error when input or its decoded structure exceeds limits, or ValueWireDecodeError::InvalidJson for malformed input.

Source

pub const fn container(&self) -> &ValueContainer

Borrows the preserved runtime value.

Source

pub fn into_container(self) -> ValueContainer

Consumes this payload and returns its runtime value.

Trait Implementations§

Source§

impl Clone for ValueWirePayloadV1

Source§

fn clone(&self) -> ValueWirePayloadV1

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ValueWirePayloadV1

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for ValueWirePayloadV1

Source§

fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Deserializes an unversioned V1 shape.

Source§

impl Eq for ValueWirePayloadV1

Source§

impl From<ValueWirePayloadV1> for ValueContainer

Source§

fn from(value: ValueWirePayloadV1) -> Self

Extracts the shaped runtime value from a V1 payload.

Source§

impl Hash for ValueWirePayloadV1

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for ValueWirePayloadV1

Source§

fn eq(&self, other: &ValueWirePayloadV1) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Serialize for ValueWirePayloadV1

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Serializes the unversioned V1 shape.

Source§

impl StructuralPartialEq for ValueWirePayloadV1

Source§

impl TryFrom<MultiValues> for ValueWirePayloadV1

Source§

fn try_from(value: MultiValues) -> Result<Self, Self::Error>

Validates a collection for use in a V1 payload.

Source§

type Error = ValueWireEncodeError

The type returned in the event of a conversion error.
Source§

impl TryFrom<Value> for ValueWirePayloadV1

Source§

fn try_from(value: Value) -> Result<Self, Self::Error>

Validates a scalar for use in a V1 payload.

Source§

type Error = ValueWireEncodeError

The type returned in the event of a conversion error.
Source§

impl TryFrom<ValueContainer> for ValueWirePayloadV1

Source§

fn try_from(value: ValueContainer) -> Result<Self, Self::Error>

Validates an explicitly shaped value for use in a V1 payload.

Source§

type Error = ValueWireEncodeError

The type returned in the event of a conversion error.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoValueDefault<T> for T

Source§

fn into_value_default(self) -> T

Converts this argument into the default value. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.