Enum diagnostics_hierarchy::Property
source · pub enum Property<Key = String> {
String(Key, String),
Bytes(Key, Vec<u8>),
Int(Key, i64),
Uint(Key, u64),
Double(Key, f64),
Bool(Key, bool),
DoubleArray(Key, ArrayContent<f64>),
IntArray(Key, ArrayContent<i64>),
UintArray(Key, ArrayContent<u64>),
StringList(Key, Vec<String>),
}
Expand description
A named property. Each of the fields consists of (name, value).
Key is the type of the property’s name and is typically a string. In cases where there are well known, common property names, an alternative may be used to reduce copies of the name.
Variants§
String(Key, String)
The value is a string.
Bytes(Key, Vec<u8>)
The value is a bytes vector.
Int(Key, i64)
The value is an integer.
Uint(Key, u64)
The value is an unsigned integer.
Double(Key, f64)
The value is a double.
Bool(Key, bool)
The value is a boolean.
DoubleArray(Key, ArrayContent<f64>)
The value is a double array.
IntArray(Key, ArrayContent<i64>)
The value is an integer array.
UintArray(Key, ArrayContent<u64>)
The value is an unsigned integer array.
StringList(Key, Vec<String>)
The value is a list of strings.
Implementations§
source§impl<Key> Property<Key>
impl<Key> Property<Key>
sourcepub fn int(&self) -> Option<i64>
pub fn int(&self) -> Option<i64>
Returns the Int value or None
if the property isn’t of that type
sourcepub fn uint(&self) -> Option<u64>
pub fn uint(&self) -> Option<u64>
Returns the Uint value or None
if the property isn’t of that type
source§impl<Key> Property<Key>
impl<Key> Property<Key>
sourcepub fn string(&self) -> Option<&str>
pub fn string(&self) -> Option<&str>
Returns the String value or None
if the property isn’t of that type
sourcepub fn bytes(&self) -> Option<&[u8]>
pub fn bytes(&self) -> Option<&[u8]>
Returns the Bytes value or None
if the property isn’t of that type
sourcepub fn double_array(&self) -> Option<&ArrayContent<f64>>
pub fn double_array(&self) -> Option<&ArrayContent<f64>>
Returns the DoubleArray value or None
if the property isn’t of that type
sourcepub fn int_array(&self) -> Option<&ArrayContent<i64>>
pub fn int_array(&self) -> Option<&ArrayContent<i64>>
Returns the IntArray value or None
if the property isn’t of that type
sourcepub fn uint_array(&self) -> Option<&ArrayContent<u64>>
pub fn uint_array(&self) -> Option<&ArrayContent<u64>>
Returns the UintArray value or None
if the property isn’t of that type
sourcepub fn string_list(&self) -> Option<&[String]>
pub fn string_list(&self) -> Option<&[String]>
Returns the StringList value or None
if the property isn’t of that type
source§impl<K> Property<K>
impl<K> Property<K>
sourcepub fn discriminant_name(&self) -> &'static str
pub fn discriminant_name(&self) -> &'static str
Returns a string indicating which variant of property this is, useful for printing debug values.
sourcepub fn number_as_int(&self) -> Option<i64>
pub fn number_as_int(&self) -> Option<i64>
Return a a numeric property as a signed integer. Useful for having a single function to call when a property has been passed through JSON, potentially losing its original signedness.
Note: unsigned integers larger than isize::MAX
will be returned as None
. If you expect
values that high, consider calling Property::int()
and Property::uint()
directly.
Trait Implementations§
source§impl<Key: PartialEq> PartialEq for Property<Key>
impl<Key: PartialEq> PartialEq for Property<Key>
impl<Key> StructuralPartialEq for Property<Key>
Auto Trait Implementations§
impl<Key> Freeze for Property<Key>where
Key: Freeze,
impl<Key> RefUnwindSafe for Property<Key>where
Key: RefUnwindSafe,
impl<Key> Send for Property<Key>where
Key: Send,
impl<Key> Sync for Property<Key>where
Key: Sync,
impl<Key> Unpin for Property<Key>where
Key: Unpin,
impl<Key> UnwindSafe for Property<Key>where
Key: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)