(&self, key: &K, doc: &Doc)
| 31 | /// insert entry |
| 32 | #[inline] |
| 33 | pub fn insert<Doc>(&self, key: &K, doc: &Doc) -> Result<(), StatusResult> |
| 34 | where |
| 35 | Doc: Document, |
| 36 | { |
| 37 | let index_keys = doc.extract(); |
| 38 | for ik in index_keys.iter() { |
| 39 | if let Some(_) = self.hash.get(ik) { |
| 40 | return Err(StatusResult::Duplicate) |
| 41 | } |
| 42 | } |
| 43 | |
| 44 | doc.extract().into_iter().for_each(|index_key| { |
| 45 | self.hash.insert(index_key, key.clone()); |
| 46 | }); |
| 47 | |
| 48 | Ok(()) |
| 49 | } |
| 50 | |
| 51 | /// remove entry |
| 52 | #[inline] |