Trait value_trait::Object
source · pub trait Object {
type Key;
type Element;
fn get<Q: ?Sized>(&self, k: &Q) -> Option<&Self::Element>
where
Self::Key: Borrow<Q> + Hash + Eq,
Q: Hash + Eq + Ord;
fn get_mut<Q: ?Sized>(&mut self, k: &Q) -> Option<&mut Self::Element>
where
Self::Key: Borrow<Q> + Hash + Eq,
Q: Hash + Eq + Ord;
fn insert<K, V>(&mut self, k: K, v: V) -> Option<Self::Element>
where
K: Into<Self::Key>,
V: Into<Self::Element>,
Self::Key: Hash + Eq;
fn remove<Q: ?Sized>(&mut self, k: &Q) -> Option<Self::Element>
where
Self::Key: Borrow<Q>,
Q: Hash + Eq + Ord;
fn iter<'i>(
&'i self
) -> Box<dyn Iterator<Item = (&'_ Self::Key, &'_ Self::Element)> + 'i>;
fn keys<'i>(&'i self) -> Box<dyn Iterator<Item = &'_ Self::Key> + 'i>;
fn values<'i>(&'i self) -> Box<dyn Iterator<Item = &'_ Self::Element> + 'i>;
fn len(&self) -> usize;
fn is_empty(&self) -> bool { ... }
}
Expand description
A JSON Object
Required Associated Types
Required Methods
sourcefn get<Q: ?Sized>(&self, k: &Q) -> Option<&Self::Element>where
Self::Key: Borrow<Q> + Hash + Eq,
Q: Hash + Eq + Ord,
fn get<Q: ?Sized>(&self, k: &Q) -> Option<&Self::Element>where
Self::Key: Borrow<Q> + Hash + Eq,
Q: Hash + Eq + Ord,
Gets a ref to a value based on a key, returns None
if the
current Value isn’t an Object or doesn’t contain the key
it was asked for.
sourcefn get_mut<Q: ?Sized>(&mut self, k: &Q) -> Option<&mut Self::Element>where
Self::Key: Borrow<Q> + Hash + Eq,
Q: Hash + Eq + Ord,
fn get_mut<Q: ?Sized>(&mut self, k: &Q) -> Option<&mut Self::Element>where
Self::Key: Borrow<Q> + Hash + Eq,
Q: Hash + Eq + Ord,
Gets the value of a key as a mutable reference.
sourcefn insert<K, V>(&mut self, k: K, v: V) -> Option<Self::Element>where
K: Into<Self::Key>,
V: Into<Self::Element>,
Self::Key: Hash + Eq,
fn insert<K, V>(&mut self, k: K, v: V) -> Option<Self::Element>where
K: Into<Self::Key>,
V: Into<Self::Element>,
Self::Key: Hash + Eq,
Inserts a value
sourcefn remove<Q: ?Sized>(&mut self, k: &Q) -> Option<Self::Element>where
Self::Key: Borrow<Q>,
Q: Hash + Eq + Ord,
fn remove<Q: ?Sized>(&mut self, k: &Q) -> Option<Self::Element>where
Self::Key: Borrow<Q>,
Q: Hash + Eq + Ord,
Removes a value from the object
sourcefn iter<'i>(
&'i self
) -> Box<dyn Iterator<Item = (&'_ Self::Key, &'_ Self::Element)> + 'i>
fn iter<'i>(
&'i self
) -> Box<dyn Iterator<Item = (&'_ Self::Key, &'_ Self::Element)> + 'i>
Iterates over the key value paris