From 0cd055407810c598bf303e89a724d54b9d0be209 Mon Sep 17 00:00:00 2001 From: Ilya Gorbunov Date: Sat, 27 Feb 2016 01:23:39 +0300 Subject: [PATCH] JS: Remove unsupported Enumeration declaration. Relates to #KT-7480 --- js/js.libraries/src/core/javautil.kt | 6 ------ libraries/stdlib/src/kotlin/collections/Iterators.kt | 3 ++- libraries/stdlib/src/kotlin/collections/Sequences.kt | 1 + 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/js/js.libraries/src/core/javautil.kt b/js/js.libraries/src/core/javautil.kt index e54fe82d312..e97414f6fd1 100644 --- a/js/js.libraries/src/core/javautil.kt +++ b/js/js.libraries/src/core/javautil.kt @@ -122,12 +122,6 @@ public open class LinkedHashMap( @library public open class NoSuchElementException(message: String? = null) : Exception() {} -@library -public interface Enumeration { - public fun hasMoreElements(): Boolean - public fun nextElement(): E -} - @native public class Date() { public fun getTime(): Int = noImpl diff --git a/libraries/stdlib/src/kotlin/collections/Iterators.kt b/libraries/stdlib/src/kotlin/collections/Iterators.kt index f8131247eb6..2c26059fe7c 100644 --- a/libraries/stdlib/src/kotlin/collections/Iterators.kt +++ b/libraries/stdlib/src/kotlin/collections/Iterators.kt @@ -3,11 +3,12 @@ package kotlin.collections -import java.util.Enumeration +import java.util.* /** * Creates an [Iterator] for an [Enumeration], allowing to use it in `for` loops. */ +@kotlin.jvm.JvmVersion public operator fun Enumeration.iterator(): Iterator = object : Iterator { override fun hasNext(): Boolean = hasMoreElements() diff --git a/libraries/stdlib/src/kotlin/collections/Sequences.kt b/libraries/stdlib/src/kotlin/collections/Sequences.kt index d0c3ecdfa2e..1fd744878d8 100644 --- a/libraries/stdlib/src/kotlin/collections/Sequences.kt +++ b/libraries/stdlib/src/kotlin/collections/Sequences.kt @@ -23,6 +23,7 @@ public fun Iterator.asSequence(): Sequence = Sequence { this }.constra /** * Creates a sequence that returns all values from this enumeration. The sequence is constrained to be iterated only once. */ +@kotlin.jvm.JvmVersion @kotlin.internal.InlineOnly public inline fun Enumeration.asSequence(): Sequence = this.iterator().asSequence()