simd_json::owned

Enum Value

Source
pub enum Value {
    Static(StaticNode),
    String(String),
    Array(Box<Vec<Value>>),
    Object(Box<Object>),
}
Expand description

Owned JSON-DOM Value, consider using the ValueTrait to access it’s content. This is slower then the BorrowedValue as a tradeoff for getting rid of lifetimes.

Variants§

§

Static(StaticNode)

Static values

§

String(String)

string type

§

Array(Box<Vec<Value>>)

array type

§

Object(Box<Object>)

object type

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 Default for Value

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for Value

Source§

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

Deserialize this value from the given Serde deserializer. Read more
Source§

impl<'de> Deserializer<'de> for &'de Value

Source§

type Error = Error

The error type that can be returned if some error occurs during deserialization.
Source§

fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>
where V: Visitor<'de>,

Require the Deserializer to figure out how to drive the visitor based on what data type is in the input. Read more
Source§

fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an optional value. Read more
Source§

fn deserialize_newtype_struct<V>( self, _name: &'static str, visitor: V, ) -> Result<V::Value, Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a newtype struct with a particular name.
Source§

fn deserialize_struct<V>( self, _name: &'static str, _fields: &'static [&'static str], visitor: V, ) -> Result<V::Value, Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a struct with a particular name and fields.
Source§

fn deserialize_enum<V>( self, _name: &str, _variants: &'static [&'static str], visitor: V, ) -> Result<V::Value, Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an enum value with a particular name and possible variants.
Source§

fn deserialize_bool<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a bool value.
Source§

fn deserialize_i8<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an i8 value.
Source§

fn deserialize_i16<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an i16 value.
Source§

fn deserialize_i32<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an i32 value.
Source§

fn deserialize_i64<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an i64 value.
Source§

fn deserialize_i128<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an i128 value. Read more
Source§

fn deserialize_u8<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a u8 value.
Source§

fn deserialize_u16<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a u16 value.
Source§

fn deserialize_u32<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a u32 value.
Source§

fn deserialize_u64<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a u64 value.
Source§

fn deserialize_u128<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an u128 value. Read more
Source§

fn deserialize_f32<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a f32 value.
Source§

fn deserialize_f64<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a f64 value.
Source§

fn deserialize_char<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a char value.
Source§

fn deserialize_str<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a string value and does not benefit from taking ownership of buffered data owned by the Deserializer. Read more
Source§

fn deserialize_string<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a string value and would benefit from taking ownership of buffered data owned by the Deserializer. Read more
Source§

fn deserialize_bytes<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a byte array and does not benefit from taking ownership of buffered data owned by the Deserializer. Read more
Source§

fn deserialize_byte_buf<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a byte array and would benefit from taking ownership of buffered data owned by the Deserializer. Read more
Source§

fn deserialize_unit<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a unit value.
Source§

fn deserialize_unit_struct<V>( self, name: &'static str, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a unit struct with a particular name.
Source§

fn deserialize_seq<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a sequence of values.
Source§

fn deserialize_tuple<V>( self, len: usize, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a sequence of values and knows how many values there are without looking at the serialized data.
Source§

fn deserialize_tuple_struct<V>( self, name: &'static str, len: usize, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a tuple struct with a particular name and number of fields.
Source§

fn deserialize_map<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a map of key-value pairs.
Source§

fn deserialize_identifier<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting the name of a struct field or the discriminant of an enum variant.
Source§

fn deserialize_ignored_any<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type needs to deserialize a value whose type doesn’t matter because it is ignored. Read more
Source§

fn is_human_readable(&self) -> bool

Determine whether Deserialize implementations should expect to deserialize their human-readable form. Read more
Source§

impl<'de> Deserializer<'de> for Value

Source§

type Error = Error

The error type that can be returned if some error occurs during deserialization.
Source§

fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>
where V: Visitor<'de>,

Require the Deserializer to figure out how to drive the visitor based on what data type is in the input. Read more
Source§

fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an optional value. Read more
Source§

fn deserialize_enum<V>( self, _name: &str, _variants: &'static [&'static str], visitor: V, ) -> Result<V::Value, Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an enum value with a particular name and possible variants.
Source§

fn deserialize_newtype_struct<V>( self, _name: &'static str, visitor: V, ) -> Result<V::Value, Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a newtype struct with a particular name.
Source§

fn deserialize_struct<V>( self, _name: &'static str, _fields: &'static [&'static str], visitor: V, ) -> Result<V::Value, Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a struct with a particular name and fields.
Source§

fn deserialize_bool<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a bool value.
Source§

fn deserialize_i8<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an i8 value.
Source§

fn deserialize_i16<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an i16 value.
Source§

fn deserialize_i32<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an i32 value.
Source§

fn deserialize_i64<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an i64 value.
Source§

fn deserialize_i128<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an i128 value. Read more
Source§

fn deserialize_u8<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a u8 value.
Source§

fn deserialize_u16<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a u16 value.
Source§

fn deserialize_u32<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a u32 value.
Source§

fn deserialize_u64<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a u64 value.
Source§

fn deserialize_u128<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting an u128 value. Read more
Source§

fn deserialize_f32<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a f32 value.
Source§

fn deserialize_f64<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a f64 value.
Source§

fn deserialize_char<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a char value.
Source§

fn deserialize_str<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a string value and does not benefit from taking ownership of buffered data owned by the Deserializer. Read more
Source§

fn deserialize_string<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a string value and would benefit from taking ownership of buffered data owned by the Deserializer. Read more
Source§

fn deserialize_bytes<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a byte array and does not benefit from taking ownership of buffered data owned by the Deserializer. Read more
Source§

fn deserialize_byte_buf<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a byte array and would benefit from taking ownership of buffered data owned by the Deserializer. Read more
Source§

fn deserialize_unit<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a unit value.
Source§

fn deserialize_unit_struct<V>( self, name: &'static str, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a unit struct with a particular name.
Source§

fn deserialize_seq<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a sequence of values.
Source§

fn deserialize_tuple<V>( self, len: usize, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a sequence of values and knows how many values there are without looking at the serialized data.
Source§

fn deserialize_tuple_struct<V>( self, name: &'static str, len: usize, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a tuple struct with a particular name and number of fields.
Source§

fn deserialize_map<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting a map of key-value pairs.
Source§

fn deserialize_identifier<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type is expecting the name of a struct field or the discriminant of an enum variant.
Source§

fn deserialize_ignored_any<V>( self, visitor: V, ) -> Result<V::Value, <Self as Deserializer<'de>>::Error>
where V: Visitor<'de>,

Hint that the Deserialize type needs to deserialize a value whose type doesn’t matter because it is ignored. Read more
Source§

fn is_human_readable(&self) -> bool

Determine whether Deserialize implementations should expect to deserialize their human-readable form. Read more
Source§

impl Display for Value

Source§

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

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

impl From<&String> for Value

Source§

fn from(s: &String) -> Self

Converts to this type from the input type.
Source§

impl From<&str> for Value

Source§

fn from(s: &str) -> Self

Converts to this type from the input type.
Source§

impl From<()> for Value

Source§

fn from(_b: ()) -> Self

Converts to this type from the input type.
Source§

impl<'value> From<Cow<'value, str>> for Value

Source§

fn from(c: Cow<'value, str>) -> Self

Converts to this type from the input type.
Source§

impl From<HashMap<String, Value>> for Value

Source§

fn from(v: HashMap<String, Self>) -> Self

Converts to this type from the input type.
Source§

impl<T> From<Option<T>> for Value
where Value: From<T>,

Source§

fn from(s: Option<T>) -> Self

Converts to this type from the input type.
Source§

impl From<SizedHashMap<String, Value>> for Value

Source§

fn from(v: Object) -> Self

Converts to this type from the input type.
Source§

impl From<StaticNode> for Value

Source§

fn from(s: StaticNode) -> Self

Converts to this type from the input type.
Source§

impl From<String> for Value

Source§

fn from(s: String) -> Self

Converts to this type from the input type.
Source§

impl From<Value<'_>> for Value

Source§

fn from(b: BorrowedValue<'_>) -> Self

Converts to this type from the input type.
Source§

impl<'value> From<Value> for Value<'value>

Source§

fn from(b: OwnedValue) -> Self

Converts to this type from the input type.
Source§

impl<S> From<Vec<S>> for Value
where Value: From<S>,

Source§

fn from(v: Vec<S>) -> Self

Converts to this type from the input type.
Source§

impl From<bool> for Value

Source§

fn from(b: bool) -> Self

Converts to this type from the input type.
Source§

impl From<f32> for Value

Source§

fn from(f: f32) -> Self

Converts to this type from the input type.
Source§

impl From<f64> for Value

Source§

fn from(f: f64) -> Self

Converts to this type from the input type.
Source§

impl From<i16> for Value

Source§

fn from(i: i16) -> Self

Converts to this type from the input type.
Source§

impl From<i32> for Value

Source§

fn from(i: i32) -> Self

Converts to this type from the input type.
Source§

impl From<i64> for Value

Source§

fn from(i: i64) -> Self

Converts to this type from the input type.
Source§

impl From<i8> for Value

Source§

fn from(i: i8) -> Self

Converts to this type from the input type.
Source§

impl From<u16> for Value

Source§

fn from(i: u16) -> Self

Converts to this type from the input type.
Source§

impl From<u32> for Value

Source§

fn from(i: u32) -> Self

Converts to this type from the input type.
Source§

impl From<u64> for Value

Source§

fn from(i: u64) -> Self

Converts to this type from the input type.
Source§

impl From<u8> for Value

Source§

fn from(i: u8) -> Self

Converts to this type from the input type.
Source§

impl From<usize> for Value

Source§

fn from(i: usize) -> Self

Converts to this type from the input type.
Source§

impl<K: ToString, V: Into<Value>> FromIterator<(K, V)> for Value

Source§

fn from_iter<I: IntoIterator<Item = (K, V)>>(iter: I) -> Self

Creates a value from an iterator. Read more
Source§

impl<V: Into<Value>> FromIterator<V> for Value

Source§

fn from_iter<I: IntoIterator<Item = V>>(iter: I) -> Self

Creates a value from an iterator. Read more
Source§

impl Index<&str> for Value

Source§

type Output = Value

The returned type after indexing.
Source§

fn index(&self, index: &str) -> &Self::Output

Performs the indexing (container[index]) operation. Read more
Source§

impl Index<usize> for Value

Source§

type Output = Value

The returned type after indexing.
Source§

fn index(&self, index: usize) -> &Self::Output

Performs the indexing (container[index]) operation. Read more
Source§

impl IndexMut<&str> for Value

Source§

fn index_mut(&mut self, index: &str) -> &mut Self::Output

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl IndexMut<usize> for Value

Source§

fn index_mut(&mut self, index: usize) -> &mut Self::Output

Performs the mutable indexing (container[index]) operation. Read more
Source§

impl<'de> IntoDeserializer<'de, Error> for Value

Source§

type Deserializer = Value

The type of the deserializer being converted into.
Source§

fn into_deserializer(self) -> Self::Deserializer

Convert this value into a deserializer.
Source§

impl<T> PartialEq<&[T]> for Value
where Value: PartialEq<T>,

Source§

fn eq(&self, other: &&[T]) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<T> PartialEq<&T> for Value
where Value: PartialEq<T>,

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<&str> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<()> for Value

Source§

fn eq(&self, _other: &()) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<K, T, S> PartialEq<HashMap<K, T, S>> for Value
where K: AsRef<str> + Hash + Eq, Value: PartialEq<T>, S: BuildHasher,

Source§

fn eq(&self, other: &HashMap<K, T, S>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<String> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<Value<'_>> for Value

Source§

fn eq(&self, other: &BorrowedValue<'_>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<'value> PartialEq<Value> for Value<'value>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<bool> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<f32> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<f64> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<i128> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<i16> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<i32> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<i64> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<i8> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<str> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<u128> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<u16> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<u32> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<u64> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<u8> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<usize> for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq for Value

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for Value

Source§

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

Serialize this value into the given Serde serializer. Read more
Source§

impl TryFrom<Value> for OwnedValue

Source§

type Error = SerdeConversionError

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

fn try_from(item: Value) -> Result<Self, SerdeConversionError>

Performs the conversion.
Source§

impl TryInto<Value> for OwnedValue

Source§

type Error = SerdeConversionError

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

fn try_into(self) -> Result<Value, SerdeConversionError>

Performs the conversion.
Source§

impl TypedValue for Value

Source§

fn value_type(&self) -> ValueType

Gets the type of the current value
Source§

impl ValueAsArray for Value

Source§

type Array = Vec<Value>

The array structure
Source§

fn as_array(&self) -> Option<&Vec<Self>>

Tries to represent the value as an array and returns a reference to it
Source§

impl ValueAsMutArray for Value

Source§

type Array = Vec<Value>

The type for Arrays
Source§

fn as_array_mut(&mut self) -> Option<&mut Vec<Self>>

Tries to represent the value as an array and returns a mutable reference to it
Source§

impl ValueAsMutObject for Value

Source§

type Object = SizedHashMap<String, Value>

The type for Objects
Source§

fn as_object_mut(&mut self) -> Option<&mut Object>

Tries to represent the value as an object and returns a mutable reference to it
Source§

impl ValueAsObject for Value

Source§

type Object = SizedHashMap<String, Value>

The object structure
Source§

fn as_object(&self) -> Option<&Object>

Tries to represent the value as an object and returns a reference to it
Source§

impl ValueAsScalar for Value

Source§

fn as_null(&self) -> Option<()>

Tries to represent the value as a ‘null’;
Source§

fn as_bool(&self) -> Option<bool>

Tries to represent the value as a bool
Source§

fn as_i64(&self) -> Option<i64>

Tries to represent the value as an i64
Source§

fn as_i128(&self) -> Option<i128>

Tries to represent the value as an i128
Source§

fn as_u64(&self) -> Option<u64>

Tries to represent the value as an u64
Source§

fn as_u128(&self) -> Option<u128>

Tries to represent the value as an u128
Source§

fn as_f64(&self) -> Option<f64>

Tries to represent the value as a f64
Source§

fn cast_f64(&self) -> Option<f64>

Casts the current value to a f64 if possible, this will turn integer values into floats.
Source§

fn as_str(&self) -> Option<&str>

Tries to represent the value as a &str
Source§

fn as_i32(&self) -> Option<i32>

Tries to represent the value as an i32
Source§

fn as_i16(&self) -> Option<i16>

Tries to represent the value as an i16
Source§

fn as_i8(&self) -> Option<i8>

Tries to represent the value as an i8
Source§

fn as_usize(&self) -> Option<usize>

Tries to represent the value as an usize
Source§

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

Tries to represent the value as an u32
Source§

fn as_u16(&self) -> Option<u16>

Tries to represent the value as an u16
Source§

fn as_u8(&self) -> Option<u8>

Tries to represent the value as an u8
Source§

fn as_f32(&self) -> Option<f32>

Tries to represent the value as a f32
Source§

fn as_char(&self) -> Option<char>

Tries to represent the value as a Char
Source§

impl<'input> ValueBuilder<'input> for Value

Source§

fn null() -> Self

Returns anull value
Source§

fn array_with_capacity(capacity: usize) -> Self

Returns an empty array with a given capacity
Source§

fn object_with_capacity(capacity: usize) -> Self

Returns an empty object with a given capacity
Source§

fn array() -> Self

Returns an empty array
Source§

fn object() -> Self

Returns an empty object
Source§

impl ValueIntoArray for Value

Source§

type Array = Vec<Value>

The type for Arrays
Source§

fn into_array(self) -> Option<<Value as ValueIntoArray>::Array>

Tries to turn the value into it’s array representation
Source§

impl ValueIntoObject for Value

Source§

type Object = SizedHashMap<String, Value>

The type for Objects
Source§

fn into_object(self) -> Option<<Value as ValueIntoObject>::Object>

Tries to turn the value into it’s object representation
Source§

impl ValueIntoString for Value

Source§

type String = String

The type for Strings
Source§

fn into_string(self) -> Option<<Value as ValueIntoString>::String>

Tries to turn the value into it’s string representation
Source§

impl Writable for Value

Source§

fn encode(&self) -> String

Encodes the value into it’s JSON representation as a string
Source§

fn encode_pp(&self) -> String

Encodes the value into it’s JSON representation as a string (pretty printed)
Source§

fn write<'writer, W>(&self, w: &mut W) -> Result<()>
where W: 'writer + Write,

Encodes the value into it’s JSON representation into a Writer Read more
Source§

fn write_pp<'writer, W>(&self, w: &mut W) -> Result<()>
where W: 'writer + Write,

Encodes the value into it’s JSON representation into a Writer, pretty printed Read more

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> CloneToUninit for T
where T: Clone,

Source§

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

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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> MutableArray for T

Source§

fn pop(&mut self) -> Result<Option<<T as MutableArray>::Target>, AccessError>

Pops from this Value as an Array. Will return an AccessError::NotAnArray if called on a Value that isn’t an Array - otherwise will behave the same as Vec::pop

§Errors

Will return Err if self is not an array.

Source§

type Target = <<T as ValueAsMutArray>::Array as ArrayMut>::Element

The type for Array Values
Source§

fn push<V>(&mut self, v: V) -> Result<(), AccessError>
where V: Into<<T as MutableArray>::Target>,

Pushes to this Value as an Array. Will return an AccessError::NotAnArray if called on a Value that isn’t an Array - otherwise will behave the same as Vec::push Read more
Source§

fn try_push<V>(&mut self, v: V)
where V: Into<Self::Target>,

Tries to push to a Value if as an Array. This function will have no effect if Value is of a different type
Source§

fn try_pop(&mut self) -> Option<Self::Target>

Tries to pop from a Value as an Array. if the Value is any other type None will always be returned
Source§

impl<T> MutableObject for T

Source§

type Key = <<T as ValueAsMutObject>::Object as ObjectMut>::Key

The type for Object Keys
Source§

type Target = <<T as ValueAsMutObject>::Object as ObjectMut>::Element

The type for Object Values
Source§

type Object = <T as ValueAsMutObject>::Object

The type for Objects
Source§

fn insert<K, V>( &mut self, k: K, v: V, ) -> Result<Option<<T as MutableObject>::Target>, AccessError>
where <T as MutableObject>::Key: From<K> + Hash + Eq, V: Into<<T as MutableObject>::Target>,

Insert into this Value as an Object. Will return an AccessError::NotAnObject if called on a Value that isn’t an object - otherwise will behave the same as HashMap::insert Read more
Source§

fn remove<Q>( &mut self, k: &Q, ) -> Result<Option<<T as MutableObject>::Target>, AccessError>
where <T as MutableObject>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Remove from this Value as an Object. Will return an AccessError::NotAnObject if called on a Value that isn’t an object - otherwise will behave the same as HashMap::remove Read more
Source§

fn get_mut<Q>(&mut self, k: &Q) -> Option<&mut <T as MutableObject>::Target>
where <T as MutableObject>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Same as get but returns a mutable ref instead
Source§

fn try_insert<K, V>(&mut self, k: K, v: V) -> Option<Self::Target>
where Self::Key: From<K> + Hash + Eq, V: Into<Self::Target>,

Tries to insert into this Value as an Object. If the Value isn’t an object this opoeration will return None and have no effect.
Source§

fn try_remove<Q>(&mut self, k: &Q) -> Option<Self::Target>
where Self::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to remove from this Value as an Object. If the Value isn’t an object this opoeration will return None and have no effect.
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> ToString for T
where T: Display + ?Sized,

Source§

default fn to_string(&self) -> String

Converts the given value to a String. 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.
Source§

impl<T> TypedArrayValue for T
where T: ValueAsArray,

Source§

fn is_array(&self) -> bool

returns true if the current value can be represented as an array
Source§

impl<T> TypedObjectValue for T
where T: ValueAsObject,

Source§

fn is_object(&self) -> bool

returns true if the current value can be represented as an object
Source§

impl<T> TypedScalarValue for T
where T: ValueAsScalar,

Source§

fn is_null(&self) -> bool

returns true if the current value is null
Source§

fn is_float(&self) -> bool

returns true if the current value a floatingpoint number
Source§

fn is_integer(&self) -> bool

returns true if the current value a integer number
Source§

fn is_number(&self) -> bool

returns true if the current value a number either float or intege
Source§

fn is_bool(&self) -> bool

returns true if the current value a bool
Source§

fn is_i128(&self) -> bool

returns true if the current value can be represented as a i128
Source§

fn is_i64(&self) -> bool

returns true if the current value can be represented as a i64
Source§

fn is_i32(&self) -> bool

returns true if the current value can be represented as a i32
Source§

fn is_i16(&self) -> bool

returns true if the current value can be represented as a i16
Source§

fn is_i8(&self) -> bool

returns true if the current value can be represented as a i8
Source§

fn is_u128(&self) -> bool

returns true if the current value can be represented as a u128
Source§

fn is_u64(&self) -> bool

returns true if the current value can be represented as a u64
Source§

fn is_usize(&self) -> bool

returns true if the current value can be represented as a usize
Source§

fn is_u32(&self) -> bool

returns true if the current value can be represented as a u32
Source§

fn is_u16(&self) -> bool

returns true if the current value can be represented as a u16
Source§

fn is_u8(&self) -> bool

returns true if the current value can be represented as a u8
Source§

fn is_f64(&self) -> bool

returns true if the current value can be represented as a f64
Source§

fn is_f64_castable(&self) -> bool

returns true if the current value can be cast into a f64
Source§

fn is_f32(&self) -> bool

returns true if the current value can be represented as a f64
Source§

fn is_str(&self) -> bool

returns true if the current value can be represented as a str
Source§

fn is_char(&self) -> bool

returns true if the current value can be represented as a char
Source§

impl<T> ValueArrayTryAccess for T

Source§

fn try_get_idx( &self, i: usize, ) -> Result<Option<&<T as ValueArrayTryAccess>::Target>, TryTypeError>

Tries to get a value based on n index, returns a type error if the current value isn’t an Array, returns None if the index is out of bounds

§Errors

if the requested type doesn’t match the actual type or the value is not an object

Source§

type Target = <<T as ValueTryAsArray>::Array as Indexed<usize>>::Element

The target for nested lookups
Source§

impl<T> ValueObjectAccess for T
where T: ValueAsObject,

Source§

type Key = <<T as ValueAsObject>::Object as Object>::Key

The type for Objects
Source§

type Target = <<T as ValueAsObject>::Object as Object>::Element

The target for nested lookups
Source§

fn get<Q>(&self, k: &Q) -> Option<&<T as ValueObjectAccess>::Target>
where <T as ValueObjectAccess>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Gets a ref to a value based on a key, returns None if the current Value isn’t an Object or doesn’t contain the key it was asked for.
Source§

fn contains_key<Q>(&self, k: &Q) -> bool
where <T as ValueObjectAccess>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Checks if a Value contains a given key. This will return flase if Value isn’t an object
Source§

impl<T> ValueObjectAccessAsArray for T

Source§

type Key = <T as ValueObjectAccess>::Key

The type for Objects
Source§

type Array = <<T as ValueObjectAccess>::Target as ValueAsArray>::Array

The array structure
Source§

fn get_array<Q>(&self, k: &Q) -> Option<&<T as ValueObjectAccessAsArray>::Array>
where <T as ValueObjectAccessAsArray>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a array
Source§

impl<T> ValueObjectAccessAsObject for T

Source§

type Key = <T as ValueObjectAccess>::Key

The type for Objects
Source§

type Object = <<T as ValueObjectAccess>::Target as ValueAsObject>::Object

The object structure
Source§

fn get_object<Q>( &self, k: &Q, ) -> Option<&<T as ValueObjectAccessAsObject>::Object>
where <T as ValueObjectAccessAsObject>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a object
Source§

impl<T> ValueObjectAccessAsScalar for T

Source§

type Key = <T as ValueObjectAccess>::Key

The type for Objects
Source§

fn get_bool<Q>(&self, k: &Q) -> Option<bool>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a bool
Source§

fn get_i128<Q>(&self, k: &Q) -> Option<i128>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a i128
Source§

fn get_i64<Q>(&self, k: &Q) -> Option<i64>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a i64
Source§

fn get_i32<Q>(&self, k: &Q) -> Option<i32>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a i32
Source§

fn get_i16<Q>(&self, k: &Q) -> Option<i16>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a i16
Source§

fn get_i8<Q>(&self, k: &Q) -> Option<i8>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a i8
Source§

fn get_u128<Q>(&self, k: &Q) -> Option<u128>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a u128
Source§

fn get_u64<Q>(&self, k: &Q) -> Option<u64>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a u64
Source§

fn get_usize<Q>(&self, k: &Q) -> Option<usize>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a usize
Source§

fn get_u32<Q>(&self, k: &Q) -> Option<u32>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a u32
Source§

fn get_u16<Q>(&self, k: &Q) -> Option<u16>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a u16
Source§

fn get_u8<Q>(&self, k: &Q) -> Option<u8>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a u8
Source§

fn get_f64<Q>(&self, k: &Q) -> Option<f64>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a f64
Source§

fn get_f32<Q>(&self, k: &Q) -> Option<f32>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a f32
Source§

fn get_str<Q>(&self, k: &Q) -> Option<&str>
where <T as ValueObjectAccessAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a str
Source§

impl<T> ValueObjectAccessTryAsArray for T

Source§

type Key = <T as ValueObjectTryAccess>::Key

The type for Objects
Source§

type Array = <<T as ValueObjectTryAccess>::Target as ValueTryAsArray>::Array

The array structure
Source§

fn try_get_array<Q>( &self, k: &Q, ) -> Result<Option<&<T as ValueObjectAccessTryAsArray>::Array>, TryTypeError>
where <T as ValueObjectAccessTryAsArray>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as an array, returns an error if it isn’t a array Read more
Source§

impl<T> ValueObjectAccessTryAsObject for T

Source§

type Key = <T as ValueObjectTryAccess>::Key

The type for Objects
Source§

type Object = <<T as ValueObjectTryAccess>::Target as ValueTryAsObject>::Object

The object structure
Source§

fn try_get_object<Q>( &self, k: &Q, ) -> Result<Option<&<T as ValueObjectAccessTryAsObject>::Object>, TryTypeError>
where <T as ValueObjectAccessTryAsObject>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as an object, returns an error if it isn’t an object Read more
Source§

impl<T> ValueObjectAccessTryAsScalar for T

Source§

type Key = <T as ValueObjectTryAccess>::Key

The type for Objects
Source§

fn try_get_bool<Q>(&self, k: &Q) -> Result<Option<bool>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a bool, returns an error if it isn’t bool Read more
Source§

fn try_get_i128<Q>(&self, k: &Q) -> Result<Option<i128>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a i128, returns an error if it isn’t i128 Read more
Source§

fn try_get_i64<Q>(&self, k: &Q) -> Result<Option<i64>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a i64, returns an error if it isn’t a i64 Read more
Source§

fn try_get_i32<Q>(&self, k: &Q) -> Result<Option<i32>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a i32, returns an error if it isn’t a i32 Read more
Source§

fn try_get_i16<Q>(&self, k: &Q) -> Result<Option<i16>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a i16, returns an error if it isn’t a i16 Read more
Source§

fn try_get_i8<Q>(&self, k: &Q) -> Result<Option<i8>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a i8, returns an error if it isn’t a i8 Read more
Source§

fn try_get_u128<Q>(&self, k: &Q) -> Result<Option<u128>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a u128, returns an error if it isn’t a u128 Read more
Source§

fn try_get_u64<Q>(&self, k: &Q) -> Result<Option<u64>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a u64, returns an error if it isn’t a u64 Read more
Source§

fn try_get_usize<Q>(&self, k: &Q) -> Result<Option<usize>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a usize, returns an error if it isn’t a usize Read more
Source§

fn try_get_u32<Q>(&self, k: &Q) -> Result<Option<u32>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a u32, returns an error if it isn’t a u32 Read more
Source§

fn try_get_u16<Q>(&self, k: &Q) -> Result<Option<u16>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a u16, returns an error if it isn’t a u16 Read more
Source§

fn try_get_u8<Q>(&self, k: &Q) -> Result<Option<u8>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a u8, returns an error if it isn’t a u8 Read more
Source§

fn try_get_f64<Q>(&self, k: &Q) -> Result<Option<f64>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a f64, returns an error if it isn’t a f64 Read more
Source§

fn try_get_f32<Q>(&self, k: &Q) -> Result<Option<f32>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a f32, returns an error if it isn’t a f32 Read more
Source§

fn try_get_str<Q>(&self, k: &Q) -> Result<Option<&str>, TryTypeError>
where <T as ValueObjectAccessTryAsScalar>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get an element of an object as a str, returns an error if it isn’t a str Read more
Source§

impl<T> ValueObjectTryAccess for T

Source§

type Key = <<T as ValueTryAsObject>::Object as Object>::Key

The type for Objects
Source§

type Target = <<T as ValueTryAsObject>::Object as Object>::Element

The target for nested lookups
Source§

fn try_get<Q>( &self, k: &Q, ) -> Result<Option<&<T as ValueObjectTryAccess>::Target>, TryTypeError>
where <T as ValueObjectTryAccess>::Key: Borrow<Q>, Q: Hash + Eq + Ord + ?Sized,

Tries to get a value based on a key, returns a TryTypeError if the current Value isn’t an Object, returns None if the key isn’t in the object Read more
Source§

impl<T> ValueTryAsArray for T

Source§

type Array = <T as ValueAsArray>::Array

The array structure
Source§

fn try_as_array(&self) -> Result<&<T as ValueTryAsArray>::Array, TryTypeError>

Tries to represent the value as an array and returns a reference to it Read more
Source§

impl<T> ValueTryAsArrayMut for T

Source§

type Array = <T as ValueAsMutArray>::Array

The array structure
Source§

fn try_as_array_mut( &mut self, ) -> Result<&mut <T as ValueTryAsArrayMut>::Array, TryTypeError>

Tries to represent the value as an array and returns a mutable reference to it Read more
Source§

impl<T> ValueTryAsMutObject for T

Source§

type Object = <T as ValueAsMutObject>::Object

The type for Objects
Source§

fn try_as_object_mut( &mut self, ) -> Result<&mut <T as ValueTryAsMutObject>::Object, TryTypeError>

Tries to represent the value as an object and returns a mutable reference to it Read more
Source§

impl<T> ValueTryAsObject for T

Source§

type Object = <T as ValueAsObject>::Object

The object structure
Source§

fn try_as_object( &self, ) -> Result<&<T as ValueTryAsObject>::Object, TryTypeError>

Tries to represent the value as an object and returns a reference to it Read more
Source§

impl<T> ValueTryAsScalar for T

Source§

fn try_as_bool(&self) -> Result<bool, TryTypeError>

Tries to represent the value as a bool Read more
Source§

fn try_as_i128(&self) -> Result<i128, TryTypeError>

Tries to represent the value as a i128 Read more
Source§

fn try_as_i64(&self) -> Result<i64, TryTypeError>

Tries to represent the value as an i64 Read more
Source§

fn try_as_i32(&self) -> Result<i32, TryTypeError>

Tries to represent the value as an i32 Read more
Source§

fn try_as_i16(&self) -> Result<i16, TryTypeError>

Tries to represent the value as an i16 Read more
Source§

fn try_as_i8(&self) -> Result<i8, TryTypeError>

Tries to represent the value as an i8 Read more
Source§

fn try_as_u128(&self) -> Result<u128, TryTypeError>

Tries to represent the value as an u128 Read more
Source§

fn try_as_u64(&self) -> Result<u64, TryTypeError>

Tries to represent the value as an u64 Read more
Source§

fn try_as_usize(&self) -> Result<usize, TryTypeError>

Tries to represent the value as an usize Read more
Source§

fn try_as_u32(&self) -> Result<u32, TryTypeError>

Tries to represent the value as an u32 Read more
Source§

fn try_as_u16(&self) -> Result<u16, TryTypeError>

Tries to represent the value as an u16 Read more
Source§

fn try_as_u8(&self) -> Result<u8, TryTypeError>

Tries to represent the value as an u8 Read more
Source§

fn try_as_f64(&self) -> Result<f64, TryTypeError>

Tries to represent the value as a f64 Read more
Source§

fn try_cast_f64(&self) -> Result<f64, TryTypeError>

Tries to Casts the current value to a f64 if possible, this will turn integer values into floats and error if it isn’t possible Read more
Source§

fn try_as_f32(&self) -> Result<f32, TryTypeError>

Tries to represent the value as a f32 Read more
Source§

fn try_as_str(&self) -> Result<&str, TryTypeError>

Tries to represent the value as a &str Read more
Source§

fn try_as_char(&self) -> Result<char, TryTypeError>

Tries to represent the value as a Char Read more
Source§

impl<T> ValueTryIntoArray for T

Source§

fn try_into_array(self) -> Result<<T as ValueTryIntoArray>::Array, TryTypeError>

Tries to turn the value into it’s array representation

§Errors

if the requested type doesn’t match the actual type

Source§

type Array = <T as ValueIntoArray>::Array

The type for Arrays
Source§

impl<T> ValueTryIntoObject for T

Source§

fn try_into_object( self, ) -> Result<<T as ValueTryIntoObject>::Object, TryTypeError>

Tries to turn the value into it’s object representation

§Errors

if the requested type doesn’t match the actual type

Source§

type Object = <T as ValueIntoObject>::Object

The type for Objects
Source§

impl<T> ValueTryIntoString for T

Source§

type String = <T as ValueIntoString>::String

The type for Strings
Source§

fn try_into_string( self, ) -> Result<<T as ValueTryIntoString>::String, TryTypeError>

Tries to turn the value into it’s string representation Read more
Source§

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