Implements System.Collections.Generic.IArraySortHelper< TKey, TValue >.
Definition at line 494 of file GenericArraySortHelper.cs.
495 {
496 try
497 {
499 {
500 if (
keys.Length <= 1)
501 {
502 return;
503 }
504 if (typeof(TKey) == typeof(double) || typeof(TKey) == typeof(float) || typeof(TKey) == typeof(Half))
505 {
506 int num = SortUtils.MoveNansToFront(
keys,
values);
507 if (num ==
keys.Length)
508 {
509 return;
510 }
513 }
515 }
516 else
517 {
519 }
520 }
521 catch (IndexOutOfRangeException)
522 {
523 ThrowHelper.ThrowArgumentException_BadComparer(
comparer);
524 }
525 catch (Exception e)
526 {
527 ThrowHelper.ThrowInvalidOperationException(
ExceptionResource.InvalidOperation_IComparerFailed, e);
528 }
529 }
static void IntroSort(Span< T > keys, int depthLimit)
static int Log2(uint value)
References System.comparer, System.Default, System.Collections.Generic.GenericArraySortHelper< TKey, TValue >.IntroSort(), System.keys, System.Numerics.BitOperations.Log2(), System.ThrowHelper.ThrowArgumentException_BadComparer(), System.ThrowHelper.ThrowInvalidOperationException(), and System.values.