Struct serde_json::map::Map
[−]
[src]
pub struct Map<K, V> { /* fields omitted */ }
Represents a JSON key/value type.
Methods
impl Map<String, Value>
[src]
fn new() -> Self
Makes a new empty Map.
fn with_capacity(capacity: usize) -> Self
Makes a new empty Map with the given initial capacity.
fn clear(&mut self)
Clears the map, removing all values.
fn get<Q: ?Sized>(&self, key: &Q) -> Option<&Value> where
String: Borrow<Q>,
Q: Ord + Eq + Hash,
String: Borrow<Q>,
Q: Ord + Eq + Hash,
Returns a reference to the value corresponding to the key.
The key may be any borrowed form of the map's key type, but the ordering on the borrowed form must match the ordering on the key type.
fn contains_key<Q: ?Sized>(&self, key: &Q) -> bool where
String: Borrow<Q>,
Q: Ord + Eq + Hash,
String: Borrow<Q>,
Q: Ord + Eq + Hash,
Returns true if the map contains a value for the specified key.
The key may be any borrowed form of the map's key type, but the ordering on the borrowed form must match the ordering on the key type.
fn get_mut<Q: ?Sized>(&mut self, key: &Q) -> Option<&mut Value> where
String: Borrow<Q>,
Q: Ord + Eq + Hash,
String: Borrow<Q>,
Q: Ord + Eq + Hash,
Returns a mutable reference to the value corresponding to the key.
The key may be any borrowed form of the map's key type, but the ordering on the borrowed form must match the ordering on the key type.
fn insert(&mut self, k: String, v: Value) -> Option<Value>
Inserts a key-value pair into the map.
If the map did not have this key present, None
is returned.
If the map did have this key present, the value is updated, and the old
value is returned. The key is not updated, though; this matters for
types that can be ==
without being identical.
fn remove<Q: ?Sized>(&mut self, key: &Q) -> Option<Value> where
String: Borrow<Q>,
Q: Ord + Eq + Hash,
String: Borrow<Q>,
Q: Ord + Eq + Hash,
Removes a key from the map, returning the value at the key if the key was previously in the map.
The key may be any borrowed form of the map's key type, but the ordering on the borrowed form must match the ordering on the key type.
fn entry<S>(&mut self, key: S) -> Entry where
S: Into<String>,
S: Into<String>,
Gets the given key's corresponding entry in the map for in-place manipulation.
fn len(&self) -> usize
Returns the number of elements in the map.
fn is_empty(&self) -> bool
Returns true if the map contains no elements.
fn iter(&self) -> Iter
Gets an iterator over the entries of the map.
fn iter_mut(&mut self) -> IterMut
Gets a mutable iterator over the entries of the map.
fn keys(&self) -> Keys
Gets an iterator over the keys of the map.
fn values(&self) -> Values
Gets an iterator over the values of the map.
Trait Implementations
impl Default for Map<String, Value>
[src]
impl Clone for Map<String, Value>
[src]
fn clone(&self) -> Self
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl PartialEq for Map<String, Value>
[src]
fn eq(&self, other: &Self) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &Rhs) -> bool
1.0.0
This method tests for !=
.
impl<'a, Q: ?Sized> Index<&'a Q> for Map<String, Value> where
String: Borrow<Q>,
Q: Ord + Eq + Hash,
[src]
String: Borrow<Q>,
Q: Ord + Eq + Hash,
Access an element of this map. Panics if the given key is not present in the map.
match *val { Value::String(ref s) => Some(s.as_str()), Value::Array(ref arr) => arr[0].as_str(), Value::Object(ref map) => map["type"].as_str(), _ => None, }
type Output = Value
The returned type after indexing
fn index(&self, index: &Q) -> &Value
The method for the indexing (container[index]
) operation
impl<'a, Q: ?Sized> IndexMut<&'a Q> for Map<String, Value> where
String: Borrow<Q>,
Q: Ord + Eq + Hash,
[src]
String: Borrow<Q>,
Q: Ord + Eq + Hash,
Mutably access an element of this map. Panics if the given key is not present in the map.
map["key"] = json!("value");
fn index_mut(&mut self, index: &Q) -> &mut Value
The method for the mutable indexing (container[index]
) operation
impl Debug for Map<String, Value>
[src]
fn fmt(&self, formatter: &mut Formatter) -> Result<(), Error>
Formats the value using the given formatter.
impl Serialize for Map<String, Value>
[src]
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> where
S: Serializer,
S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl<'de> Deserialize<'de> for Map<String, Value>
[src]
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> where
D: Deserializer<'de>,
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl FromIterator<(String, Value)> for Map<String, Value>
[src]
fn from_iter<T>(iter: T) -> Self where
T: IntoIterator<Item = (String, Value)>,
T: IntoIterator<Item = (String, Value)>,
Creates a value from an iterator. Read more
impl Extend<(String, Value)> for Map<String, Value>
[src]
fn extend<T>(&mut self, iter: T) where
T: IntoIterator<Item = (String, Value)>,
T: IntoIterator<Item = (String, Value)>,
Extends a collection with the contents of an iterator. Read more
impl<'a> IntoIterator for &'a Map<String, Value>
[src]
type Item = (&'a String, &'a Value)
The type of the elements being iterated over.
type IntoIter = Iter<'a>
Which kind of iterator are we turning this into?
fn into_iter(self) -> Self::IntoIter
Creates an iterator from a value. Read more
impl<'a> IntoIterator for &'a mut Map<String, Value>
[src]
type Item = (&'a String, &'a mut Value)
The type of the elements being iterated over.
type IntoIter = IterMut<'a>
Which kind of iterator are we turning this into?
fn into_iter(self) -> Self::IntoIter
Creates an iterator from a value. Read more