fragmentation/diff
Types
A change between two fragment trees.
pub type Change {
Added(fragment: fragmentation.Fragment)
Removed(fragment: fragmentation.Fragment)
Modified(
old: fragmentation.Fragment,
new: fragmentation.Fragment,
)
Unchanged(fragment: fragmentation.Fragment)
}
Constructors
-
Added(fragment: fragmentation.Fragment)Fragment exists only in the new tree.
-
Removed(fragment: fragmentation.Fragment)Fragment exists only in the old tree.
-
Modified( old: fragmentation.Fragment, new: fragmentation.Fragment, )Same position, different content.
-
Unchanged(fragment: fragmentation.Fragment)Same ref, same content.
Values
pub fn diff(
old: fragmentation.Fragment,
new: fragmentation.Fragment,
) -> List(Change)
Diff two fragment trees by their roots. Compares structurally: same hash = unchanged, different hash = modified. Children compared positionally.