- Timestamp:
- 02/04/15 00:03:14 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/ProgrammableProblem/HeuristicLab.Problems.Programmable/3.3/Encodings/Encoding.cs
r11753 r11880 52 52 encodingOperators = new HashSet<IOperator>(value, new TypeEqualityComparer<IOperator>()); 53 53 54 T newSolutionCreator = (T)encodingOperators.FirstOrDefault(o => o.GetType() == solutionCreator.GetType()) ;55 if (newSolutionCreator == null) newSolutionCreator =encodingOperators.OfType<T>().First();54 T newSolutionCreator = (T)encodingOperators.FirstOrDefault(o => o.GetType() == solutionCreator.GetType()) ?? 55 encodingOperators.OfType<T>().First(); 56 56 SolutionCreator = newSolutionCreator; 57 57 OnOperatorsChanged(); … … 83 83 [StorableConstructor] 84 84 protected Encoding(bool deserializing) : base(deserializing) { } 85 86 85 protected Encoding(Encoding<T> original, Cloner cloner) 87 86 : base(original, cloner) { 88 encodingOperators = new HashSet<IOperator>(original.Operators.Select(cloner.Clone) );87 encodingOperators = new HashSet<IOperator>(original.Operators.Select(cloner.Clone), new TypeEqualityComparer<IOperator>()); 89 88 solutionCreator = cloner.Clone(original.solutionCreator); 90 89 } … … 97 96 public void ConfigureOperator(IOperator @operator) { ConfigureOperators(new[] { @operator }); } 98 97 public abstract void ConfigureOperators(IEnumerable<IOperator> operators); 99 100 98 101 99 public event EventHandler SolutionCreatorChanged;
Note: See TracChangeset
for help on using the changeset viewer.