pub enum AttributeValue {
String(String),
Array(Vec<AttributeValue>),
Number(f64),
Bool(bool),
Object(HashMap<String, AttributeValue>),
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>)
Stores an array of attribute values.
Number(f64)
Stores a number.
Bool(bool)
Stores a boolean.
Object(HashMap<String, AttributeValue>)
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<Self, __D::Error>where
__D: Deserializer<'de>,
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 From<&Value> for AttributeValue
impl From<&Value> for AttributeValue
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>) -> AttributeValue
fn from(hashmap: HashMap<S, T>) -> 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§fn from(v: Vec<T>) -> AttributeValue
fn from(v: Vec<T>) -> AttributeValue
Converts to this type from the input type.
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§impl From<i64> for AttributeValue
impl From<i64> for AttributeValue
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§impl<T> FromIterator<T> for AttributeValuewhere
AttributeValue: From<T>,
impl<T> FromIterator<T> for AttributeValuewhere
AttributeValue: From<T>,
source§fn from_iter<I: IntoIterator<Item = T>>(iter: I) -> Self
fn from_iter<I: IntoIterator<Item = T>>(iter: I) -> Self
Creates a value from an iterator. Read more