Fix: diffing should poproots too

This commit is contained in:
Jonathan Kelley committed 2022-04-04 12:18:51 -04:00
1 parent 09d193d999
commit 93405c2a40
3 files changed
+10

No files matched your search

+8
View File
@@ -185,6 +185,9 @@ pub enum DomEdit<'bump> {
/// The namespace of the attribute.
ns: Option<&'bump str>,
},
/// Manually pop a root node from the stack.
PopRoot {},
}
use fxhash::FxHashSet;
@@ -205,6 +208,11 @@ impl<'a> Mutations<'a> {
self.edits.push(PushRoot { root: id });
}
// Navigation
pub(crate) fn pop_root(&mut self) {
self.edits.push(PopRoot {});
}
pub(crate) fn replace_with(&mut self, root: ElementId, m: u32) {
let root = root.as_u64();
self.edits.push(ReplaceWith { m, root });