in Chemistry/src/DataModel/Extensions.cs [121:139]
public static bool IsInAscendingOrder<TElement>(this IEnumerable<TElement> enumerable, IComparer<TElement> comparer = null)
{
// return true for empty list.
if (!enumerable.Any())
{
return true;
}
var curr = enumerable.First();
foreach (var next in enumerable.Skip(1))
{
var useComparer = comparer == null ? Comparer<TElement>.Default : comparer;
if (useComparer.Compare(next, curr) < 0)
{
return false;
}
curr = next;
}
return true;
}