namespace HeuristicLab.Problems.ProgramSynthesis.Push.Expressions { public abstract class StatelessExpression : Expression { private readonly int hashCode; protected StatelessExpression() { this.hashCode = this.GetType().FullName.GetHashCode(); } public override int GetHashCode() { return this.hashCode; } public override bool Equals(object obj) { return ReferenceEquals(this, obj); } } }