Marc Knaup
09/26/2019, 7:43 AMClosedRange
have operators for destructuring?marcinmoskala
10/06/2019, 6:30 PMMarc Knaup
10/07/2019, 3:45 AMsomethingReturningClosedRange()
.let { (start, endInclusive) -> someExternalFunc(start, endInclusive) }
…
marcinmoskala
10/07/2019, 6:59 AMval (a, b) = 1..10
print(a)
print(b)
What would you expect? 1 and 10, or 1 and 2?
val (a, b) = (1..10).toList()
print(a) // 1
print(b) // 2
marcinmoskala
10/07/2019, 7:04 AMoperator fun <T: Comparable<T>> ClosedRange<T>.component1() = start
operator fun <T: Comparable<T>> ClosedRange<T>.component2() = endInclusive
But I don't recommend thatMarc Knaup
10/07/2019, 7:28 AM1, 10
or 1, 2
.marcinmoskala
10/07/2019, 2:42 PM