Skip to content

Commit fe732f9

Browse files
Pepa Hajekrjarry
authored andcommitted
Add DNode.merge_module() method
Merge all the nodes of a module from source data tree into the target data tree.
1 parent 5d46125 commit fe732f9

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

libyang/data.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -485,6 +485,22 @@ def duplicate(
485485

486486
return DNode.new(self.context, node[0])
487487

488+
def merge_module(
489+
self,
490+
source: "DNode",
491+
defaults: bool = False,
492+
destruct: bool = False,
493+
with_flags: bool = False,
494+
) -> None:
495+
flags = merge_flags(defaults=defaults, destruct=destruct, with_flags=with_flags)
496+
node_p = ffi.new("struct lyd_node **")
497+
node_p[0] = self.cdata
498+
ret = lib.lyd_merge_module(
499+
node_p, source.cdata, ffi.NULL, ffi.NULL, ffi.NULL, flags
500+
)
501+
if ret != lib.LY_SUCCESS:
502+
raise self.context.error("merge failed")
503+
488504
def merge(
489505
self,
490506
source: "DNode",

0 commit comments

Comments
 (0)