Skip to main content

ValueWirePayloadRefV1

Struct ValueWirePayloadRefV1 

Source
pub struct ValueWirePayloadRefV1<'a> { /* private fields */ }
Expand description

Borrowed unversioned V1 payload for serialization without cloning.

Use one of the fallible constructors or the corresponding TryFrom impl to create a payload. The private representation prevents callers from bypassing V1 validation by constructing an unchecked shape directly.

§Type Parameters

  • 'a - Lifetime of the runtime payload borrowed for serialization.

§Examples

use qubit_value::{Value, ValueWirePayloadRefV1};

let value = Value::from(42_i32);
let _payload = ValueWirePayloadRefV1::from_value(&value).unwrap();

Implementations§

Source§

impl<'a> ValueWirePayloadRefV1<'a>

Source

pub fn from_value(value: &'a Value) -> Result<Self, ValueWireEncodeError>

Borrows a scalar after validating V1’s finite-float invariant.

§Parameters
  • value - Scalar runtime value to validate and borrow.
§Returns

A borrowed V1 payload preserving the scalar shape.

§Errors

Returns ValueWireEncodeError when the scalar contains a non-finite float or an out-of-range decimal scale.

Source

pub fn from_values( values: &'a MultiValues, ) -> Result<Self, ValueWireEncodeError>

Borrows a collection after validating V1’s finite-float invariant.

§Parameters
  • values - Homogeneous runtime collection to validate and borrow.
§Returns

A borrowed V1 payload preserving the collection shape.

§Errors

Returns ValueWireEncodeError when an element is a non-finite float or has an out-of-range decimal scale.

Source

pub fn from_container( value: &'a ValueContainer, ) -> Result<Self, ValueWireEncodeError>

Borrows an explicit shape after validating V1’s finite-float invariant.

§Parameters
  • value - Explicit scalar-or-collection value to validate and borrow.
§Returns

A borrowed V1 payload preserving the original shape.

§Errors

Returns ValueWireEncodeError when any contained value violates the V1 numeric representation constraints.

Source

pub fn to_json_vec(&self) -> Result<Vec<u8>, ValueWireEncodeError>

Encodes the borrowed V1 payload into a compact JSON vector.

§Returns

Compact UTF-8 JSON bytes for this unversioned payload.

§Errors

Returns ValueWireEncodeError when encoding exceeds the default resource profile or Serde rejects the payload.

Source

pub fn to_json_vec_with_limits( &self, limits: JsonEncodeLimits, ) -> Result<Vec<u8>, ValueWireEncodeError>

Encodes the borrowed V1 payload with explicit JSON resource limits.

§Parameters
  • limits - Resource limits enforced during JSON encoding.
§Returns

Compact UTF-8 JSON bytes for this unversioned payload.

§Errors

Returns ValueWireEncodeError when encoding exceeds limits or Serde rejects the payload.

Source

pub fn to_json_writer<W>(&self, writer: W) -> Result<(), ValueWireEncodeError>
where W: Write,

Encodes the borrowed V1 payload to a writer with default limits.

§Type Parameters
  • W - Destination writer type.
§Parameters
  • writer - Destination receiving the complete JSON payload.
§Returns

Ok(()) after the complete payload is written.

§Errors

Returns ValueWireEncodeError for resource, serialization, or writer failures.

Source

pub fn to_json_writer_with_limits<W>( &self, writer: W, limits: JsonEncodeLimits, ) -> Result<(), ValueWireEncodeError>
where W: Write,

Encodes the borrowed V1 payload to a writer with explicit limits.

§Type Parameters
  • W - Destination writer type.
§Parameters
  • writer - Destination receiving the complete JSON payload.
  • limits - Resource limits enforced during JSON encoding.
§Returns

Ok(()) after the complete payload is written.

§Errors

Returns ValueWireEncodeError when encoding exceeds limits, Serde rejects the payload, or writer rejects output.

Trait Implementations§

Source§

impl Serialize for ValueWirePayloadRefV1<'_>

Source§

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

Serializes the borrowed unversioned V1 shape.

Source§

impl<'a> TryFrom<&'a MultiValues> for ValueWirePayloadRefV1<'a>

Source§

fn try_from(values: &'a MultiValues) -> Result<Self, Self::Error>

Borrows and validates a collection.

Source§

type Error = ValueWireEncodeError

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

impl<'a> TryFrom<&'a Value> for ValueWirePayloadRefV1<'a>

Source§

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

Borrows and validates a scalar.

Source§

type Error = ValueWireEncodeError

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

impl<'a> TryFrom<&'a ValueContainer> for ValueWirePayloadRefV1<'a>

Source§

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

Borrows and validates an explicit shape.

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> 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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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.