plus: do not generate ambiguos overloads.

This commit is contained in:
Ilya Gorbunov
2015-07-07 05:07:40 +03:00
parent d89af24d6c
commit a7bf415ad5
2 changed files with 21 additions and 34 deletions
+10 -14
View File
@@ -635,24 +635,20 @@ public fun <T> Set<T>.plus(array: Array<out T>): Set<T> {
return result
}
/**
* Returns a list containing all elements of the original collection and then all elements of the given [collection].
*/
public fun <T> Collection<T>.plus(collection: Collection<T>): List<T> {
val result = ArrayList<T>(this.size() + collection.size())
result.addAll(this)
result.addAll(collection)
return result
}
/**
* Returns a list containing all elements of the original collection and then all elements of the given [collection].
*/
public fun <T> Collection<T>.plus(collection: Iterable<T>): List<T> {
if (collection is Collection) return this.plus(collection)
val result = ArrayList<T>(this)
result.addAll(collection)
return result
if (collection is Collection) {
val result = ArrayList<T>(this.size() + collection.size())
result.addAll(this)
result.addAll(collection)
return result
} else {
val result = ArrayList<T>(this)
result.addAll(collection)
return result
}
}
/**