Changeset 16176 for branches/2886_SymRegGrammarEnumeration/HeuristicLab.Algorithms.DataAnalysis.SymRegGrammarEnumeration/GrammarEnumeration/Symbol.cs
- Timestamp:
- 09/22/18 21:57:59 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2886_SymRegGrammarEnumeration/HeuristicLab.Algorithms.DataAnalysis.SymRegGrammarEnumeration/GrammarEnumeration/Symbol.cs
r16053 r16176 26 26 namespace HeuristicLab.Algorithms.DataAnalysis.SymRegGrammarEnumeration { 27 27 [StorableClass] 28 public abstract class Symbol : DeepCloneable, IEquatable<Symbol> {28 public abstract class Symbol : DeepCloneable, IEquatable<Symbol>, IComparable<Symbol> { 29 29 [Storable] 30 30 private readonly int stringRepresentationHash; … … 78 78 return stringRepresentationHash; 79 79 } 80 81 public int CompareTo(Symbol other) { 82 var v1 = this as VariableTerminalSymbol; 83 var v2 = other as VariableTerminalSymbol; 84 85 if ((v1 == null && v2 == null) || (v1 != null && v2 != null)) 86 return this.StringRepresentation.CompareTo(other.StringRepresentation); 87 return v1 == null ? 1 : -1; 88 } 80 89 #endregion 81 90 } … … 119 128 protected NonterminalSymbol(bool deserializing) : base(deserializing) { } 120 129 } 121 122 123 130 }
Note: See TracChangeset
for help on using the changeset viewer.