diff options
Diffstat (limited to 'src/mscorlib/src/System/ICloneable.cs')
-rw-r--r-- | src/mscorlib/src/System/ICloneable.cs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/mscorlib/src/System/ICloneable.cs b/src/mscorlib/src/System/ICloneable.cs new file mode 100644 index 0000000000..2931802539 --- /dev/null +++ b/src/mscorlib/src/System/ICloneable.cs @@ -0,0 +1,29 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +/*============================================================ +** +** +** This interface is implemented by classes that support cloning. +** +===========================================================*/ +namespace System { + + using System; + // Defines an interface indicating that an object may be cloned. Only objects + // that implement ICloneable may be cloned. The interface defines a single + // method which is called to create a clone of the object. Object defines a method + // MemberwiseClone to support default clone operations. + // + [System.Runtime.InteropServices.ComVisible(true)] + public interface ICloneable + { + // Interface does not need to be marked with the serializable attribute + // Make a new object which is a copy of the object instanced. This object may be either + // deep copy or a shallow copy depending on the implementation of clone. The default + // Object support for clone does a shallow copy. + // + Object Clone(); + } +} |