Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
11/06/10 01:56:04 (14 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.Encodings.SymbolicExpressionTreeEncoding/3.3/SymbolicExpressionTree.cs

    r4068 r4722  
    6363    }
    6464
    65     public SymbolicExpressionTree()
    66       : base() {
     65    [StorableConstructor]
     66    protected SymbolicExpressionTree(bool deserializing) : base(deserializing) { }
     67    protected SymbolicExpressionTree(SymbolicExpressionTree original, Cloner cloner)
     68      : base(original, cloner) {
     69      root = cloner.Clone(original.Root);
    6770    }
    68 
     71    public SymbolicExpressionTree() : base() { }
    6972    public SymbolicExpressionTree(SymbolicExpressionTreeNode root)
    7073      : base() {
     
    8487
    8588    public override IDeepCloneable Clone(Cloner cloner) {
    86       SymbolicExpressionTree clone = new SymbolicExpressionTree();
    87       cloner.RegisterClonedObject(this, clone);
    88       if (root != null)
    89         clone.root = (SymbolicExpressionTreeNode)this.root.Clone();
    90       return clone;
     89      return new SymbolicExpressionTree(this, cloner);
    9190    }
    9291  }
Note: See TracChangeset for help on using the changeset viewer.