pub struct OccupiedEntry<'a> { /* private fields */ }
Expand description

An occupied Entry. It is part of the Entry enum.

Implementations

Gets a reference to the key in the entry.

Examples
use serde_json::map::Entry;

let mut map = serde_json::Map::new();
map.insert("serde".to_owned(), json!(12));

match map.entry("serde") {
    Entry::Occupied(occupied) => {
        assert_eq!(occupied.key(), &"serde");
    }
    Entry::Vacant(_) => unimplemented!(),
}

Gets a reference to the value in the entry.

Examples
use serde_json::map::Entry;

let mut map = serde_json::Map::new();
map.insert("serde".to_owned(), json!(12));

match map.entry("serde") {
    Entry::Occupied(occupied) => {
        assert_eq!(occupied.get(), 12);
    }
    Entry::Vacant(_) => unimplemented!(),
}

Gets a mutable reference to the value in the entry.

Examples
use serde_json::map::Entry;

let mut map = serde_json::Map::new();
map.insert("serde".to_owned(), json!([1, 2, 3]));

match map.entry("serde") {
    Entry::Occupied(mut occupied) => {
        occupied.get_mut().as_array_mut().unwrap().push(json!(4));
    }
    Entry::Vacant(_) => unimplemented!(),
}

assert_eq!(map["serde"].as_array().unwrap().len(), 4);

Converts the entry into a mutable reference to its value.

Examples
use serde_json::map::Entry;

let mut map = serde_json::Map::new();
map.insert("serde".to_owned(), json!([1, 2, 3]));

match map.entry("serde") {
    Entry::Occupied(mut occupied) => {
        occupied.into_mut().as_array_mut().unwrap().push(json!(4));
    }
    Entry::Vacant(_) => unimplemented!(),
}

assert_eq!(map["serde"].as_array().unwrap().len(), 4);

Sets the value of the entry with the OccupiedEntry’s key, and returns the entry’s old value.

Examples
use serde_json::map::Entry;

let mut map = serde_json::Map::new();
map.insert("serde".to_owned(), json!(12));

match map.entry("serde") {
    Entry::Occupied(mut occupied) => {
        assert_eq!(occupied.insert(json!(13)), 12);
        assert_eq!(occupied.get(), 13);
    }
    Entry::Vacant(_) => unimplemented!(),
}

Takes the value of the entry out of the map, and returns it.

Examples
use serde_json::map::Entry;

let mut map = serde_json::Map::new();
map.insert("serde".to_owned(), json!(12));

match map.entry("serde") {
    Entry::Occupied(occupied) => {
        assert_eq!(occupied.remove(), 12);
    }
    Entry::Vacant(_) => unimplemented!(),
}

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s. Read more

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s. Read more

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait. Read more

Use this to cast from one trait object type to another. Read more

Use this to upcast a trait to one of its supertraits. Read more

Use this to cast from one trait object type to another. This method is more customizable than the dyn_cast method. Here you can also specify the “source” trait from which the cast is defined. This can for example allow using casts from a supertrait of the current trait object. Read more

Use this to cast from one trait object type to another. With this method the type parameter is a config type that uniquely specifies which cast should be preformed. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.