pub enum AttributeValue {
String(String),
Array(Vec<AttributeValue, Global>),
Number(f64),
Bool(bool),
Object(HashMap<String, AttributeValue, RandomState>),
Null,
}
Expand description
An attribute value represents possible values that can be stored in a crate::Context.
Variants§
String(String)
Stores a string value.
Array(Vec<AttributeValue, Global>)
Stores an array of attribute values.
Number(f64)
Stores a number.
Bool(bool)
Stores a boolean.
Object(HashMap<String, AttributeValue, RandomState>)
Stores a map of attribute values.
Null
Stores a null value.
Implementations§
source§impl AttributeValue
impl AttributeValue
sourcepub fn as_str(&self) -> Option<&str>
pub fn as_str(&self) -> Option<&str>
Returns None unless self is a String. It will not convert.
sourcepub fn to_f64(&self) -> Option<f64>
pub fn to_f64(&self) -> Option<f64>
Returns the wrapped value as a float for numeric types, and None otherwise.
sourcepub fn to_datetime(&self) -> Option<DateTime<Utc>>
pub fn to_datetime(&self) -> Option<DateTime<Utc>>
Attempt to convert any of the following into a chrono::DateTime in UTC:
- RFC3339/ISO8601 timestamp (example: “2016-04-16T17:09:12.759-07:00”)
- Unix epoch milliseconds as number It will return None if the conversion fails or if no conversion is possible.
sourcepub fn as_semver(&self) -> Option<Version>
pub fn as_semver(&self) -> Option<Version>
Attempt to parse a string attribute into a semver version.
It will return None if it cannot parse it, or for non-string attributes.
sourcepub fn find<P>(&self, p: P) -> Option<&AttributeValue>where
P: Fn(&AttributeValue) -> bool,
pub fn find<P>(&self, p: P) -> Option<&AttributeValue>where
P: Fn(&AttributeValue) -> bool,
Find the AttributeValue based off the provided predicate p
.
Trait Implementations§
source§impl Clone for AttributeValue
impl Clone for AttributeValue
source§fn clone(&self) -> AttributeValue
fn clone(&self) -> AttributeValue
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for AttributeValue
impl Debug for AttributeValue
source§impl<'de> Deserialize<'de> for AttributeValue
impl<'de> Deserialize<'de> for AttributeValue
source§fn deserialize<__D>(
__deserializer: __D
) -> Result<AttributeValue, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<AttributeValue, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl From<&Value> for AttributeValue
impl From<&Value> for AttributeValue
source§fn from(v: &Value) -> AttributeValue
fn from(v: &Value) -> AttributeValue
Converts to this type from the input type.
source§impl From<&str> for AttributeValue
impl From<&str> for AttributeValue
source§fn from(s: &str) -> AttributeValue
fn from(s: &str) -> AttributeValue
Converts to this type from the input type.
source§impl<S, T> From<HashMap<S, T, RandomState>> for AttributeValuewhere
String: From<S>,
AttributeValue: From<T>,
impl<S, T> From<HashMap<S, T, RandomState>> for AttributeValuewhere
String: From<S>,
AttributeValue: From<T>,
source§fn from(hashmap: HashMap<S, T, RandomState>) -> AttributeValue
fn from(hashmap: HashMap<S, T, RandomState>) -> AttributeValue
Converts to this type from the input type.
source§impl From<String> for AttributeValue
impl From<String> for AttributeValue
source§fn from(s: String) -> AttributeValue
fn from(s: String) -> AttributeValue
Converts to this type from the input type.
source§impl<T> From<Vec<T, Global>> for AttributeValuewhere
AttributeValue: From<T>,
impl<T> From<Vec<T, Global>> for AttributeValuewhere
AttributeValue: From<T>,
source§impl From<bool> for AttributeValue
impl From<bool> for AttributeValue
source§fn from(b: bool) -> AttributeValue
fn from(b: bool) -> AttributeValue
Converts to this type from the input type.
source§impl From<f64> for AttributeValue
impl From<f64> for AttributeValue
source§fn from(f: f64) -> AttributeValue
fn from(f: f64) -> AttributeValue
Converts to this type from the input type.
source§impl From<i64> for AttributeValue
impl From<i64> for AttributeValue
source§fn from(i: i64) -> AttributeValue
fn from(i: i64) -> AttributeValue
Converts to this type from the input type.
source§impl<S, T> FromIterator<(S, T)> for AttributeValuewhere
String: From<S>,
AttributeValue: From<T>,
impl<S, T> FromIterator<(S, T)> for AttributeValuewhere
String: From<S>,
AttributeValue: From<T>,
source§fn from_iter<I>(iter: I) -> AttributeValuewhere
I: IntoIterator<Item = (S, T)>,
fn from_iter<I>(iter: I) -> AttributeValuewhere
I: IntoIterator<Item = (S, T)>,
Creates a value from an iterator. Read more
source§impl<T> FromIterator<T> for AttributeValuewhere
AttributeValue: From<T>,
impl<T> FromIterator<T> for AttributeValuewhere
AttributeValue: From<T>,
source§fn from_iter<I>(iter: I) -> AttributeValuewhere
I: IntoIterator<Item = T>,
fn from_iter<I>(iter: I) -> AttributeValuewhere
I: IntoIterator<Item = T>,
Creates a value from an iterator. Read more
source§impl PartialEq<AttributeValue> for AttributeValue
impl PartialEq<AttributeValue> for AttributeValue
source§fn eq(&self, other: &AttributeValue) -> bool
fn eq(&self, other: &AttributeValue) -> bool
source§impl Serialize for AttributeValue
impl Serialize for AttributeValue
source§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,
Serialize this value into the given Serde serializer. Read more