Enum dittolive_ditto::prelude::InfoValue
[−]pub enum InfoValue {
Null,
Bool(bool),
Integer(i128),
Float(f64),
Bytes(Vec<u8, Global>),
Text(String),
Array(Vec<Value, Global>),
Map(BTreeMap<Value, Value, Global>),
Tag(u64, Box<Value, Global>),
// some variants omitted
}
Expand description
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, Global>)
Represents a byte string.
Text(String)
Represents an UTF-8 encoded string.
Array(Vec<Value, Global>)
Represents an array of values.
Map(BTreeMap<Value, Value, Global>)
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(u64, Box<Value, Global>)
Represents a tagged value
Trait Implementations
impl<'de> Deserialize<'de> for Value
impl<'de> Deserialize<'de> for Value
fn deserialize<D>(
deserializer: D
) -> Result<Value, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D
) -> Result<Value, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
impl Ord for Value
impl Ord for Value
1.21.0 · sourcefn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 · sourcefn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
impl PartialOrd<Value> for Value
impl PartialOrd<Value> for Value
impl Serialize for Value
impl Serialize for Value
fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
impl Eq for Value
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
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> CompatExt for T
impl<T> CompatExt for T
fn compat_ref(&self) -> Compat<&T>
fn compat_ref(&self) -> Compat<&T>
Compat
] adapter by shared reference. Read morefn compat_mut(&mut self) -> Compat<&mut T>
fn compat_mut(&mut self) -> Compat<&mut T>
Compat
] adapter by mutable reference. Read more