Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
11/06/10 01:56:04 (13 years ago)
Author:
swagner
Message:

Merged cloning refactoring branch back into trunk (#922)

Location:
trunk/sources
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources

  • trunk/sources/HeuristicLab.Common/3.3/DeepCloneable.cs

    r3387 r4722  
    2020#endregion
    2121
    22 using System;
    2322
    2423namespace HeuristicLab.Common {
     
    2726  /// </summary>
    2827  public abstract class DeepCloneable : IDeepCloneable {
     28    protected DeepCloneable(DeepCloneable original, Cloner cloner) {
     29      cloner.RegisterClonedObject(original, this);
     30    }
    2931    protected DeepCloneable() { }
    3032
     
    4850    /// cloned objects.</param>
    4951    /// <returns>A clone of this instance.</returns>
    50     public virtual IDeepCloneable Clone(Cloner cloner) {
    51       DeepCloneable clone = (DeepCloneable)Activator.CreateInstance(this.GetType(),true);
    52       cloner.RegisterClonedObject(this, clone);
    53       return clone;
    54     }
     52    public abstract IDeepCloneable Clone(Cloner cloner);
    5553  }
    5654}
Note: See TracChangeset for help on using the changeset viewer.