FIR Java: map classes to make java type-parameters have correct bounds

Really, this commit implements early J2K mapping for all Java types.
It's questionable and probably wrong at least for super-types,
because, for example, we cannot resolve spliterator() in classes
derived from java.lang.Iterable
This commit is contained in:
Simon Ogorodnik
2019-04-23 04:22:12 +03:00
committed by Mikhail Glukhikh
parent cb91c6b977
commit 3e69838f48
279 changed files with 338 additions and 337 deletions

View File

@@ -1,4 +1,4 @@
public abstract interface LoadIterable<T> : R|java/lang/Object| {
public abstract interface LoadIterable<T> : R|kotlin/Any| {
public abstract operator fun getIterable(): R|ft<kotlin/collections/MutableIterable<ft<T, T?>>, kotlin/collections/Iterable<ft<T, T?>>?>|!
public abstract operator fun setIterable(Iterable: R|ft<kotlin/collections/MutableIterable<ft<T, T?>>, kotlin/collections/Iterable<ft<T, T?>>?>|!): R|kotlin/Unit|

View File

@@ -1,4 +1,4 @@
public abstract interface LoadIterator<T> : R|java/lang/Object| {
public abstract interface LoadIterator<T> : R|kotlin/Any| {
public abstract operator fun getIterator(): R|ft<kotlin/collections/MutableIterator<ft<T, T?>>, kotlin/collections/Iterator<ft<T, T?>>?>|!
public abstract operator fun setIterator(iterator: R|ft<kotlin/collections/MutableIterator<ft<T, T?>>, kotlin/collections/Iterator<ft<T, T?>>?>|!): R|kotlin/Unit|

View File

@@ -1,4 +1,4 @@
public open class Max : R|java/lang/Object| {
public open operator fun <T : R|java/lang/Object|, R|java/lang/Comparable<in T>|> max(coll: R|ft<kotlin/collections/MutableCollection<out T>, kotlin/collections/Collection<out T>?>|!): R|ft<T, T?>|!
public open class Max : R|kotlin/Any| {
public open operator fun <T : R|kotlin/Any|, R|kotlin/Comparable<in T>|> max(coll: R|ft<kotlin/collections/MutableCollection<out T>, kotlin/collections/Collection<out T>?>|!): R|ft<T, T?>|!
}