In this PR, BinaryFormat, NodeContainerFormat and Po classes implement a ICloneableFormat interface, making easier to get duplicates.
Also, there is a new constructor in Node that accepts other node. It makes a new node with the same name and tags than the original node and a deep copy of its format.
Example
// Make a node copy
Node clone = new Node(original);
// Deep copy a BinaryFormat (or other ICloneableFormat)
BinaryFormat newFormat = (BinaryFormat)oldFormat.DeepClone();
Description
In this PR,
BinaryFormat
,NodeContainerFormat
andPo
classes implement aICloneableFormat
interface, making easier to get duplicates.Also, there is a new constructor in
Node
that accepts other node. It makes a new node with the same name and tags than the original node and a deep copy of its format.Example