예제 #1
0
        protected sealed override void PopulateCopy(object copyArgs, CopyableDisposableBase copy)
        {
            var locCopyArgs = copyArgs.Arg(nameof(copyArgs)).EnsureOfType <CopyArgs>().Value;
            var locCopy     =
                copy
                .EnsureNotNull(nameof(copy))
                .EnsureOfType <CopyableDisposableBase, CopyableReadOnlyScopeBase>()
                .Value;

            //
            locCopy.WriteDA(location: ref locCopy._readOnlyState, value: new ReadOnlyStateTag());
            //
            PopulateCopy(copyArgs: locCopyArgs, copy: locCopy);
            //
            if (!((locCopyArgs?.ReadOnlyState) is null))
            {
                locCopy.WriteDA(location: ref locCopy._readOnlyState, value: locCopyArgs.ReadOnlyState);
            }
        }
예제 #2
0
 protected virtual void PopulateCopy(object copyingArgs, CopyableDisposableBase copy)
 {
 }