From d5edbfd005bf76cbcde458c100b63c810c2f50d3 Mon Sep 17 00:00:00 2001 From: Ilya Gorbunov Date: Sat, 31 Oct 2015 23:56:30 +0300 Subject: [PATCH] Refactoring: do not use own classes for nullsFirst and nullsLast wrappers of natural order. --- libraries/stdlib/src/kotlin/util/Ordering.kt | 22 ++------------------ 1 file changed, 2 insertions(+), 20 deletions(-) diff --git a/libraries/stdlib/src/kotlin/util/Ordering.kt b/libraries/stdlib/src/kotlin/util/Ordering.kt index d43432e0b1f..249bdd97a78 100644 --- a/libraries/stdlib/src/kotlin/util/Ordering.kt +++ b/libraries/stdlib/src/kotlin/util/Ordering.kt @@ -252,16 +252,7 @@ public fun nullsFirst(comparator: Comparator): Comparator { * Provides a comparator of nullable [Comparable] values * considering `null` value less than any other value. */ -public fun > nullsFirst(): Comparator { - return object: Comparator { - override fun compare(a: T?, b: T?): Int { - if (a === b) return 0 - if (a == null) return -1 - if (b == null) return 1 - return a.compareTo(b) - } - } -} +public fun > nullsFirst(): Comparator = nullsFirst(naturalOrder()) /** * Extends the given [comparator] of non-nullable values to a comparator of nullable values @@ -282,16 +273,7 @@ public fun nullsLast(comparator: Comparator): Comparator { * Provides a comparator of nullable [Comparable] values * considering `null` value greater than any other value. */ -public fun > nullsLast(): Comparator { - return object: Comparator { - override fun compare(a: T?, b: T?): Int { - if (a === b) return 0 - if (a == null) return 1 - if (b == null) return -1 - return a.compareTo(b) - } - } -} +public fun > nullsLast(): Comparator = nullsLast(naturalOrder()) /** * Returns a comparator that compares [Comparable] objects in natural order.