summaryrefslogtreecommitdiff
path: root/src/config_diff.ml
diff options
context:
space:
mode:
Diffstat (limited to 'src/config_diff.ml')
-rw-r--r--src/config_diff.ml10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/config_diff.ml b/src/config_diff.ml
index 87b2663..73c379b 100644
--- a/src/config_diff.ml
+++ b/src/config_diff.ml
@@ -456,3 +456,13 @@ let tree_union s t =
Vytree.make_full data (name_of v) (children_of v)
in
Tree_alg.ConfigAlg.tree_union s t f
+
+let tree_merge ?(destructive=false) s t =
+ let f u v =
+ let data =
+ match destructive with
+ | false -> data_of u
+ | true -> data_of v
+ in Vytree.make_full data (name_of v) (children_of v)
+ in
+ Tree_alg.ConfigAlg.tree_union s t f