Enum bilrost_types::Value

source ·
pub enum Value {
    Null,
    Float(f64),
    Signed(i64),
    Unsigned(u64),
    String(String),
    Bool(bool),
    Struct(StructValue),
    List(ListValue),
}
Expand description

Value represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants.

The JSON representation for Value is JSON value.

Variants§

§

Null

Represents a JSON null value.

§

Float(f64)

§

Signed(i64)

§

Unsigned(u64)

§

String(String)

§

Bool(bool)

§

Struct(StructValue)

Represents a structured value.

§

List(ListValue)

Represents a repeated Value.

Trait Implementations§

source§

impl Clone for Value

source§

fn clone(&self) -> Value

Returns a copy of the value. Read more
1.0.0 · source§

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

Performs copy-assignment from source. Read more
source§

impl Debug for Value

source§

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

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

impl EmptyState for Value
where ListValue: NewForOverwrite + ValueEncoder<general>, String: NewForOverwrite + ValueEncoder<general>, StructValue: NewForOverwrite + ValueEncoder<general>, bool: NewForOverwrite + ValueEncoder<general>, f64: NewForOverwrite + ValueEncoder<general>, i64: NewForOverwrite + ValueEncoder<general>, u64: NewForOverwrite + ValueEncoder<general>,

source§

fn empty() -> Self

Produces the empty state for this type.
source§

fn is_empty(&self) -> bool

Returns true iff this instance is in the empty state.
source§

fn clear(&mut self)

source§

impl Oneof for Value
where ListValue: NewForOverwrite + ValueEncoder<general>, String: NewForOverwrite + ValueEncoder<general>, StructValue: NewForOverwrite + ValueEncoder<general>, bool: NewForOverwrite + ValueEncoder<general>, f64: NewForOverwrite + ValueEncoder<general>, i64: NewForOverwrite + ValueEncoder<general>, u64: NewForOverwrite + ValueEncoder<general>,

source§

const FIELD_TAGS: &'static [u32] = _

source§

fn oneof_encode<__B: BufMut + ?Sized>(&self, buf: &mut __B, tw: &mut TagWriter)

Encodes the fields of the oneof into the given buffer.
source§

fn oneof_prepend<__B: ReverseBuf + ?Sized>( &self, buf: &mut __B, tw: &mut TagRevWriter )

Prepends the fields of the oneof into the given buffer.
source§

fn oneof_encoded_len(&self, tm: &mut impl TagMeasurer) -> usize

Measures the number of bytes that would encode this oneof.
source§

fn oneof_current_tag(&self) -> Option<u32>

Returns the current tag of the oneof, if any.
source§

fn oneof_decode_field<__B: Buf + ?Sized>( value: &mut Self, tag: u32, wire_type: WireType, buf: Capped<'_, __B>, ctx: DecodeContext ) -> Result<(), DecodeError>

Decodes from the given buffer.
source§

impl PartialEq for Value

source§

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

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

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

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl RawMessage for Value
where Self: Oneof,

source§

const __ASSERTIONS: () = ()

source§

fn raw_encode<__B>(&self, buf: &mut __B)
where __B: BufMut + ?Sized,

Encodes the message to a buffer. Read more
source§

fn raw_prepend<__B>(&self, buf: &mut __B)
where __B: ReverseBuf + ?Sized,

Prepends the message to a prepend buffer.
source§

fn raw_decode_field<__B>( &mut self, tag: u32, wire_type: WireType, _duplicated: bool, buf: Capped<'_, __B>, ctx: DecodeContext ) -> Result<(), DecodeError>
where __B: Buf + ?Sized,

Decodes a field from a buffer into self.
source§

fn raw_encoded_len(&self) -> usize

Returns the encoded length of the message without a length delimiter.
source§

impl StructuralPartialEq for Value

Auto Trait Implementations§

§

impl Freeze for Value

§

impl RefUnwindSafe for Value

§

impl Send for Value

§

impl Sync for Value

§

impl Unpin for Value

§

impl UnwindSafe for Value

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> Message for T
where T: RawMessage,

source§

fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
where B: BufMut + ?Sized,

Encodes the message to a buffer. Read more
source§

fn prepend<B>(&self, buf: &mut B)
where B: ReverseBuf + ?Sized,

Prepends the message to a buffer.
source§

fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
where B: BufMut + ?Sized,

Encodes the message with a length-delimiter to a buffer. Read more
source§

fn decode<B>(buf: B) -> Result<T, DecodeError>
where B: Buf,

Decodes an instance of the message from a buffer. Read more
source§

fn decode_length_delimited<B>(buf: B) -> Result<T, DecodeError>
where B: Buf,

Decodes a length-delimited instance of the message from the buffer.
source§

fn replace_from<B>(&mut self, buf: B) -> Result<(), DecodeError>
where B: Buf,

Decodes the non-ignored fields of this message from the buffer, replacing their values.
source§

fn replace_from_length_delimited<B>( &mut self, buf: B ) -> Result<(), DecodeError>
where B: Buf,

Decodes the non-ignored fields of this message, replacing their values from a length-delimited value encoded in the buffer.
source§

fn encoded_len(&self) -> usize

Returns the encoded length of the message without a length delimiter.
source§

fn encode_to_vec(&self) -> Vec<u8>

Encodes the message to a newly allocated buffer.
source§

fn encode_to_bytes(&self) -> Bytes

Encodes the message to a Bytes buffer.
source§

fn encode_fast(&self) -> ReverseBuffer

Encodes the message to a ReverseBuffer.
source§

fn encode_length_delimited_fast(&self) -> ReverseBuffer

Encodes the message witha length-delimiter to a ReverseBuffer.
source§

fn encode_dyn(&self, buf: &mut dyn BufMut) -> Result<(), EncodeError>

Encodes the message to a Bytes buffer.
source§

fn encode_length_delimited_to_vec(&self) -> Vec<u8>

Encodes the message with a length-delimiter to a newly allocated buffer.
source§

fn encode_length_delimited_to_bytes(&self) -> Bytes

Encodes the message with a length-delimiter to a Bytes buffer.
source§

fn encode_length_delimited_dyn( &self, buf: &mut dyn BufMut ) -> Result<(), EncodeError>

Encodes the message with a length-delimiter to a Bytes buffer.
source§

fn replace_from_slice(&mut self, buf: &[u8]) -> Result<(), DecodeError>

Decodes the non-ignored fields of this message from the buffer, replacing their values.
source§

fn replace_from_length_delimited_slice( &mut self, buf: &[u8] ) -> Result<(), DecodeError>

Decodes the non-ignored fields of this message, replacing their values from a length-delimited value encoded in the buffer.
source§

fn replace_from_dyn(&mut self, buf: &mut dyn Buf) -> Result<(), DecodeError>

Decodes the non-ignored fields of this message from the buffer, replacing their values.
source§

fn replace_from_length_delimited_dyn( &mut self, buf: &mut dyn Buf ) -> Result<(), DecodeError>

Decodes the non-ignored fields of this message, replacing their values from a length-delimited value encoded in the buffer.
source§

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

§

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>,

§

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>,

§

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.