Functions on iterators are deprecated
This commit is contained in:
committed by
Andrey Breslav
parent
33415c2333
commit
f07b7cc58d
@@ -19,18 +19,7 @@ package org.jetbrains.jet.utils
|
|||||||
import java.util.LinkedHashMap
|
import java.util.LinkedHashMap
|
||||||
import java.util.ArrayList
|
import java.util.ArrayList
|
||||||
|
|
||||||
public fun <K, V> Iterable<V>.valuesToMap(key: (V) -> K): Map<K, V> {
|
[deprecated("use streams instead")]
|
||||||
return iterator().valuesToMap(key)
|
|
||||||
}
|
|
||||||
|
|
||||||
public fun <K, V> Iterable<K>.keysToMap(value: (K) -> V): Map<K, V> {
|
|
||||||
return iterator().keysToMap(value)
|
|
||||||
}
|
|
||||||
|
|
||||||
public fun <K, V: Any> Iterable<K>.keysToMapExceptNulls(value: (K) -> V?): Map<K, V> {
|
|
||||||
return iterator().keysToMapExceptNulls(value)
|
|
||||||
}
|
|
||||||
|
|
||||||
public fun <K, V> Iterator<V>.valuesToMap(key: (V) -> K): Map<K, V> {
|
public fun <K, V> Iterator<V>.valuesToMap(key: (V) -> K): Map<K, V> {
|
||||||
val map = LinkedHashMap<K, V>()
|
val map = LinkedHashMap<K, V>()
|
||||||
for (v in this) {
|
for (v in this) {
|
||||||
@@ -39,6 +28,7 @@ public fun <K, V> Iterator<V>.valuesToMap(key: (V) -> K): Map<K, V> {
|
|||||||
return map
|
return map
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[deprecated("use streams instead")]
|
||||||
public fun <K, V> Iterator<K>.keysToMap(value: (K) -> V): Map<K, V> {
|
public fun <K, V> Iterator<K>.keysToMap(value: (K) -> V): Map<K, V> {
|
||||||
val map = LinkedHashMap<K, V>()
|
val map = LinkedHashMap<K, V>()
|
||||||
for (k in this) {
|
for (k in this) {
|
||||||
@@ -47,6 +37,7 @@ public fun <K, V> Iterator<K>.keysToMap(value: (K) -> V): Map<K, V> {
|
|||||||
return map
|
return map
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[deprecated("use streams instead")]
|
||||||
public fun <K, V: Any> Iterator<K>.keysToMapExceptNulls(value: (K) -> V?): Map<K, V> {
|
public fun <K, V: Any> Iterator<K>.keysToMapExceptNulls(value: (K) -> V?): Map<K, V> {
|
||||||
val map = LinkedHashMap<K, V>()
|
val map = LinkedHashMap<K, V>()
|
||||||
for (k in this) {
|
for (k in this) {
|
||||||
@@ -58,6 +49,33 @@ public fun <K, V: Any> Iterator<K>.keysToMapExceptNulls(value: (K) -> V?): Map<K
|
|||||||
return map
|
return map
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public fun <K, V> Iterable<V>.valuesToMap(key: (V) -> K): Map<K, V> {
|
||||||
|
val map = LinkedHashMap<K, V>()
|
||||||
|
for (v in this) {
|
||||||
|
map[key(v)] = v
|
||||||
|
}
|
||||||
|
return map
|
||||||
|
}
|
||||||
|
|
||||||
|
public fun <K, V> Iterable<K>.keysToMap(value: (K) -> V): Map<K, V> {
|
||||||
|
val map = LinkedHashMap<K, V>()
|
||||||
|
for (k in this) {
|
||||||
|
map[k] = value(k)
|
||||||
|
}
|
||||||
|
return map
|
||||||
|
}
|
||||||
|
|
||||||
|
public fun <K, V: Any> Iterable<K>.keysToMapExceptNulls(value: (K) -> V?): Map<K, V> {
|
||||||
|
val map = LinkedHashMap<K, V>()
|
||||||
|
for (k in this) {
|
||||||
|
val v = value(k)
|
||||||
|
if (v != null) {
|
||||||
|
map[k] = v
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return map
|
||||||
|
}
|
||||||
|
|
||||||
public fun <T, C: Collection<T>> C.ifEmpty(body: () -> C): C = if (isEmpty()) body() else this
|
public fun <T, C: Collection<T>> C.ifEmpty(body: () -> C): C = if (isEmpty()) body() else this
|
||||||
|
|
||||||
public fun <T> Iterable<Iterable<T>>.flatten(): List<T> {
|
public fun <T> Iterable<Iterable<T>>.flatten(): List<T> {
|
||||||
|
|||||||
Reference in New Issue
Block a user