Struct log::kv::value::Value [−][src]
pub struct Value<'v> { /* fields omitted */ }A value in a structured key-value pair.
Capturing values
There are a few ways to capture a value:
- Using the
Value::capture_*methods. - Using the
Value::from_*methods. - Using the
ToValuetrait. - Using the standard
Fromtrait.
Using the Value::capture_* methods
Value offers a few constructor methods that capture values of different kinds.
These methods require a T: 'static to support downcasting.
use log::kv::Value; let value = Value::capture_debug(&42i32); assert_eq!(Some(42), value.to_i64());
Using the Value::from_* methods
Value offers a few constructor methods that capture values of different kinds.
These methods don’t require T: 'static, but can’t support downcasting.
use log::kv::Value; let value = Value::from_debug(&42i32); assert_eq!(None, value.to_i64());
Using the ToValue trait
The ToValue trait can be used to capture values generically.
It’s the bound used by Source.
let value = 42i32.to_value(); assert_eq!(Some(42), value.to_i64());
use log::kv::ToValue; let value = (&42i32 as &dyn Debug).to_value(); assert_eq!(None, value.to_i64());
Using the standard From trait
Standard types that implement ToValue also implement From.
use log::kv::Value; let value = Value::from(42i32); assert_eq!(Some(42), value.to_i64());
Implementations
impl<'v> Value<'v>[src]
impl<'v> Value<'v>[src]pub fn from_any<T>(value: &'v T) -> Self where
T: ToValue, [src]
T: ToValue,
Get a value from a type implementing ToValue.
pub fn capture_debug<T>(value: &'v T) -> Self where
T: Debug + 'static, [src]
T: Debug + 'static,
Get a value from a type implementing std::fmt::Debug.
pub fn capture_display<T>(value: &'v T) -> Self where
T: Display + 'static, [src]
T: Display + 'static,
Get a value from a type implementing std::fmt::Display.
pub fn from_debug<T>(value: &'v T) -> Self where
T: Debug, [src]
T: Debug,
Get a value from a type implementing std::fmt::Debug.
pub fn from_display<T>(value: &'v T) -> Self where
T: Display, [src]
T: Display,
Get a value from a type implementing std::fmt::Display.
pub fn from_dyn_debug(value: &'v dyn Debug) -> Self[src]
Get a value from a dynamic std::fmt::Debug.
pub fn from_dyn_display(value: &'v dyn Display) -> Self[src]
Get a value from a dynamic std::fmt::Display.
pub fn is<T: 'static>(&self) -> bool[src]
Check whether this value can be downcast to T.
pub fn downcast_ref<T: 'static>(&self) -> Option<&T>[src]
Try downcast this value to T.
impl<'v> Value<'v>[src]
impl<'v> Value<'v>[src]pub fn to_u64(&self) -> Option<u64>[src]
Try convert this value into a u64.
pub fn to_i64(&self) -> Option<i64>[src]
Try convert this value into a i64.
pub fn to_u128(&self) -> Option<u128>[src]
Try convert this value into a u128.
pub fn to_i128(&self) -> Option<i128>[src]
Try convert this value into a i128.
pub fn to_f64(&self) -> Option<f64>[src]
Try convert this value into a f64.
pub fn to_char(&self) -> Option<char>[src]
Try convert this value into a char.
pub fn to_bool(&self) -> Option<bool>[src]
Try convert this value into a bool.
impl<'v> Value<'v>[src]
impl<'v> Value<'v>[src]pub fn to_borrowed_str(&self) -> Option<&str>[src]
Try convert this value into a borrowed string.