[][src]Enum serde_cbor::value::Value

pub enum Value {
    Null,
    Bool(bool),
    Integer(i128),
    Float(f64),
    Bytes(Vec<u8>),
    Text(String),
    Array(Vec<Value>),
    Map(BTreeMap<Value, Value>),
    Tag(u64Box<Value>),
    // some variants omitted
}

The Value enum, a loosely typed way of representing any valid CBOR value.

Maps are sorted according to the canonical ordering described in RFC 7049 bis. Therefore values are unambiguously serialized to a canonical form of CBOR from the same RFC.

Variants

Null

Represents the absence of a value or the value undefined.

Bool(bool)

Represents a boolean value.

Integer(i128)

Integer CBOR numbers.

The biggest value that can be represented is 2^64 - 1. While the smallest value is -2^64. Values outside this range can't be serialized and will cause an error.

Float(f64)

Represents a floating point value.

Bytes(Vec<u8>)

Represents a byte string.

Text(String)

Represents an UTF-8 encoded string.

Array(Vec<Value>)

Represents an array of values.

Represents a map.

Maps are also called tables, dictionaries, hashes, or objects (in JSON). While any value can be used as a CBOR key it is better to use only one type of key in a map to avoid ambiguity. If floating point values are used as keys they are compared bit-by-bit for equality. If arrays or maps are used as keys the comparisons to establish canonical order may be slow and therefore insertion and retrieval of values will be slow too.

Tag(u64Box<Value>)

Represents a tagged value

Trait Implementations

impl Clone for Value[src]

impl Debug for Value[src]

impl<'de> Deserialize<'de> for Value[src]

impl Eq for Value[src]

impl From<BTreeMap<Value, Value>> for Value[src]

impl From<String> for Value[src]

impl From<Vec<Value>> for Value[src]

impl From<Vec<u8>> for Value[src]

impl From<bool> for Value[src]

impl From<f32> for Value[src]

impl From<f64> for Value[src]

impl From<i16> for Value[src]

impl From<i32> for Value[src]

impl From<i64> for Value[src]

impl From<i8> for Value[src]

impl From<u16> for Value[src]

impl From<u32> for Value[src]

impl From<u64> for Value[src]

impl From<u8> for Value[src]

impl Ord for Value[src]

impl PartialEq<Value> for Value[src]

impl PartialOrd<Value> for Value[src]

impl Serialize for Value[src]

Auto Trait Implementations

impl RefUnwindSafe for Value

impl Send for Value

impl Sync for Value

impl Unpin for Value

impl UnwindSafe for Value

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

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

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.