public static int CompareValueType(Thing x, Thing y) { int?valueX = ((SwampThing)x).License; int?valueY = ((SpaceThing)y).License; if (!SortComparerFactory.TryEnsureValidValues(valueX.HasValue, valueY.HasValue, out int valueComparisonResult)) { return(valueComparisonResult); } return(valueX.Value.CompareTo(valueY.Value)); }
public static int CompareValueTypeNoGetter() { int?valueX = null; int?valueY = null; if (!SortComparerFactory.TryEnsureValidValues(valueX.HasValue, valueY.HasValue, out int valueComparisonResult)) { return(valueComparisonResult); } return(valueX.Value.CompareTo(valueY.Value)); }
public static int CompareEnumType(Thing x, Thing y) { long?valueX = (long)x.Day; long?valueY = (long)y.Day; if (!SortComparerFactory.TryEnsureValidValues(valueX.HasValue, valueY.HasValue, out int valueComparisonResult)) { return(valueComparisonResult); } return(valueX.Value.CompareTo(valueY)); }
public static int CompareValueBaseType(Thing x, Thing y) { int?valueX = x.Id; int?valueY = y.Id; if (!SortComparerFactory.TryEnsureValidValues(valueX.HasValue, valueY.HasValue, out int valueComparisonResult)) { return(valueComparisonResult); } return(valueX.Value.CompareTo(valueY.Value)); }