pub fn or_insert(self, default: MetadataValue<VE>) -> &'a mut MetadataValue<VE> {
        use self::Entry::*;

        match self {
            Occupied(e) => e.into_mut(),
            Vacant(e) => e.insert(default),
        }
    }
Ensures a value is in the entry by inserting the default if empty.

Returns a mutable reference to the **first** value in the entry.

# Examples

```
# use tonic::metadata::*;
let mut map: MetadataMap = MetadataMap::default();

let keys = &[
"content-length",
"x-hello",
"Content-Length",
"x-world",
];

for &key in keys {
let counter = map.entry(key)
.expect("valid key names")
.or_insert("".parse().unwrap());
*counter = format!("{}{}", counter.to_str().unwrap(), "1").parse().unwrap();
}

assert_eq!(map.get("content-length").unwrap(), "11");
assert_eq!(map.get("x-hello").unwrap(), "1");
```
tonic/src/metadata/map.rs