/// <summary>Serves as the default hash function.</summary> /// <returns>A hash code for the current object.</returns> public override int GetHashCode() { unchecked { var hc = 17L; hc = (hc * 23) + SchemeType.GetHashCode(); if (Description != null) { hc = (hc * 23) + StringComparer.Ordinal.GetHashCode(Description); } return(((int)(hc >> 32)) ^ (int)hc); } }