protected sealed override void PopulateCopy(CopyArgs args, MetadataTreeStructureComponentBase copy) { var locCopy = copy .EnsureNotNull(nameof(copy)) .EnsureOfType <MetadataTreeStructureComponentBase, MetadataTreeNodeInclusionBase>() .Value; // PopulateCopy(args, locCopy); }
protected abstract void PopulateCopy(CopyArgs args, MetadataTreeStructureComponentBase copy);
protected sealed override void PopulateCopy(CopyableReadOnlyScopeBase.CopyArgs args, MetadataTreeStructureComponentBase copy) { var locArgs = args .Arg(nameof(args)) .EnsureOfType <CopyableReadOnlyScopeBase.CopyArgs, CopyArgs>() .Value; var locCopy = copy .EnsureNotNull(nameof(copy)) .EnsureOfType <MetadataTreeStructureComponentBase, MetadataTreeNode>() .Value; // locCopy._children = new MetadataTreeNodeContainer(locCopy); locCopy._inclusions = new MetadataTreeNodeInclusionContainer(locCopy); locCopy._metadataElementLink = null; // PopulateCopy(locArgs, locCopy); }