pub struct Properties { /* private fields */ }Expand description
A typed, owned property bag for one subject.
§Performance
get/require are O(log property count); value is O(log property count).
Implementations§
Source§impl Properties
impl Properties
Sourcepub fn get<T: ValueType, V: Readable<T>>(&self, key: Key<T>) -> Option<V>
pub fn get<T: ValueType, V: Readable<T>>(&self, key: Key<T>) -> Option<V>
Reads a typed property, or None when absent or type-mismatched.
§Performance
This method is O(log property count) (plus O(value length) for text).
Sourcepub fn require<T: ValueType, V: Readable<T>>(
&self,
key: Key<T>,
) -> Result<V, DbError>
pub fn require<T: ValueType, V: Readable<T>>( &self, key: Key<T>, ) -> Result<V, DbError>
Reads a required typed property.
§Errors
Returns DbError::MissingProperty when the property is absent.
§Performance
This method is O(log property count).
Sourcepub fn value(&self, key: PropertyKeyId) -> Option<&PropertyValue>
pub fn value(&self, key: PropertyKeyId) -> Option<&PropertyValue>
Sourcepub fn iter(&self) -> impl Iterator<Item = (PropertyKeyId, &PropertyValue)>
pub fn iter(&self) -> impl Iterator<Item = (PropertyKeyId, &PropertyValue)>
Trait Implementations§
Source§impl Clone for Properties
impl Clone for Properties
Source§fn clone(&self) -> Properties
fn clone(&self) -> Properties
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 Properties
impl Debug for Properties
Source§impl Default for Properties
impl Default for Properties
Source§fn default() -> Properties
fn default() -> Properties
Returns the “default value” for a type. Read more
impl Eq for Properties
Source§impl PartialEq for Properties
impl PartialEq for Properties
Source§fn eq(&self, other: &Properties) -> bool
fn eq(&self, other: &Properties) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for Properties
Auto Trait Implementations§
impl Freeze for Properties
impl RefUnwindSafe for Properties
impl Send for Properties
impl Sync for Properties
impl Unpin for Properties
impl UnsafeUnpin for Properties
impl UnwindSafe for Properties
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
Mutably borrows from an owned value. Read more