當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Rust RawEntryMut.and_modify用法及代碼示例


本文簡要介紹rust語言中 std::collections::hash_map::RawEntryMut.and_modify 的用法。

用法

pub fn and_modify<F>(self, f: F) -> Self where    F: FnOnce(&mut K, &mut V),

在任何潛在的插入到Map之前,提供對被占用條目的就地可變訪問。

例子

#![feature(hash_raw_entry)]
use std::collections::HashMap;

let mut map: HashMap<&str, u32> = HashMap::new();

map.raw_entry_mut()
   .from_key("poneyland")
   .and_modify(|_k, v| { *v += 1 })
   .or_insert("poneyland", 42);
assert_eq!(map["poneyland"], 42);

map.raw_entry_mut()
   .from_key("poneyland")
   .and_modify(|_k, v| { *v += 1 })
   .or_insert("poneyland", 0);
assert_eq!(map["poneyland"], 43);

相關用法


注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 std::collections::hash_map::RawEntryMut.and_modify。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。