Leaf methods
(&mut self, leaf: &Leaf, _after: Option<LeafId>)
| 605 | |
| 606 | // Leaf methods |
| 607 | fn put_leaf(&mut self, leaf: &Leaf, _after: Option<LeafId>) -> Result<bool, Self::Error> { |
| 608 | let is_new = !self.leaves.contains_key(&leaf.id()); |
| 609 | self.leaves.insert(leaf.id(), leaf.clone()); |
| 610 | self.branch_leaves |
| 611 | .entry(leaf.branch()) |
| 612 | .or_default() |
| 613 | .push(leaf.id()); |
| 614 | Ok(is_new) |
| 615 | } |
| 616 | |
| 617 | fn get_leaf(&self, id: LeafId) -> Result<Option<Leaf>, Self::Error> { |
| 618 | Ok(self.leaves.get(&id).cloned()) |