use kotlin Iterable/Iterator
instead of java Iterable/Iterator in Kotlin code in tests
This commit is contained in:
@@ -16,7 +16,7 @@ fun box() : String {
|
|||||||
}
|
}
|
||||||
if(sum != 15) return "c5 failed"
|
if(sum != 15) return "c5 failed"
|
||||||
|
|
||||||
val c1: java.lang.Iterable<Int> = MyCollection1()
|
val c1: Iterable<Int> = MyCollection1()
|
||||||
sum = 0
|
sum = 0
|
||||||
for (el in c1) {
|
for (el in c1) {
|
||||||
sum = sum + el!!
|
sum = sum + el!!
|
||||||
@@ -77,15 +77,14 @@ fun box() : String {
|
|||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
|
|
||||||
class MyCollection1(): java.lang.Iterable<Int> {
|
class MyCollection1(): Iterable<Int> {
|
||||||
override fun iterator(): java.util.Iterator<Int> = MyIterator()
|
override fun iterator(): Iterator<Int> = MyIterator()
|
||||||
|
|
||||||
class MyIterator(): java.util.Iterator<Int> {
|
class MyIterator(): Iterator<Int> {
|
||||||
var k : Int = 5
|
var k : Int = 5
|
||||||
|
|
||||||
override fun next() : Int = k--
|
override fun next() : Int = k--
|
||||||
override fun hasNext() = k > 0
|
override fun hasNext() = k > 0
|
||||||
override fun remove() {}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -96,8 +95,7 @@ class MyCollection2(): Iterable<Int> {
|
|||||||
var k : Int = 5
|
var k : Int = 5
|
||||||
|
|
||||||
override fun next() : Int = k--
|
override fun next() : Int = k--
|
||||||
override val hasNext : Boolean
|
override fun hasNext() : Boolean = k > 0
|
||||||
get() = k > 0
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -108,8 +106,7 @@ class MyCollection3() {
|
|||||||
var k : Int = 5
|
var k : Int = 5
|
||||||
|
|
||||||
fun next() : Int? = k--
|
fun next() : Int? = k--
|
||||||
val hasNext : Boolean
|
fun hasNext() : Boolean = k > 0
|
||||||
get() = k > 0
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,8 +2,6 @@ package mask
|
|||||||
|
|
||||||
import java.io.*
|
import java.io.*
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import java.util.Iterator as It
|
|
||||||
import java.lang.Iterable as Itl
|
|
||||||
|
|
||||||
fun box() : String {
|
fun box() : String {
|
||||||
val input = StringReader("/Users/abreslav/work/jet/docs/luhnybin/src/test")
|
val input = StringReader("/Users/abreslav/work/jet/docs/luhnybin/src/test")
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ class Luhny() {
|
|||||||
|
|
||||||
// fun Char.isDigit() = Character.isDigit(this)
|
// fun Char.isDigit() = Character.isDigit(this)
|
||||||
|
|
||||||
fun java.lang.Iterable<Int>.sum(f : (index : Int, value : Int) -> Int) : Int {
|
fun Iterable<Int>.sum(f : (index : Int, value : Int) -> Int) : Int {
|
||||||
var sum = 0
|
var sum = 0
|
||||||
var i = 0
|
var i = 0
|
||||||
for (d in this) {
|
for (d in this) {
|
||||||
|
|||||||
@@ -6,6 +6,6 @@ val test2 = javaClass<Iterator<Int>> ()
|
|||||||
|
|
||||||
fun box(): String {
|
fun box(): String {
|
||||||
if(test.getCanonicalName() != "java.lang.String") return "fail"
|
if(test.getCanonicalName() != "java.lang.String") return "fail"
|
||||||
if(test2.getCanonicalName() != "jet.Iterator") return "fail"
|
if(test2.getCanonicalName() != "java.util.Iterator") return "fail"
|
||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
@@ -2,8 +2,8 @@ trait ISized {
|
|||||||
val size : Int
|
val size : Int
|
||||||
}
|
}
|
||||||
|
|
||||||
trait javaUtilIterator<T> : java.util.Iterator<T> {
|
trait javaUtilIterator<T> : Iterator<T> {
|
||||||
override fun remove() : Unit {
|
fun remove() : Unit {
|
||||||
throw UnsupportedOperationException()
|
throw UnsupportedOperationException()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -16,14 +16,14 @@ class MyIterator<T>(val array : ReadOnlyArray<T>) : javaUtilIterator<T> {
|
|||||||
override fun next() : T = array.get(index++)
|
override fun next() : T = array.get(index++)
|
||||||
}
|
}
|
||||||
|
|
||||||
trait ReadOnlyArray<out T> : ISized, java.lang.Iterable<T> {
|
trait ReadOnlyArray<out T> : ISized, Iterable<T> {
|
||||||
fun get(index : Int) : T
|
fun get(index : Int) : T
|
||||||
|
|
||||||
class Default {
|
class Default {
|
||||||
fun check(v: Any) = v is T
|
fun check(v: Any) = v is T
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun iterator() : java.util.Iterator<T> = MyIterator<T>(this)
|
override fun iterator() : Iterator<T> = MyIterator<T>(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
trait WriteOnlyArray<in T> : ISized {
|
trait WriteOnlyArray<in T> : ISized {
|
||||||
|
|||||||
@@ -13,4 +13,4 @@ fun arrayList<T>(vararg <!UNUSED_PARAMETER!>values<!>: T) : ArrayList<T> {<!NO_R
|
|||||||
|
|
||||||
fun <T, R> Collection<T>.map(<!UNUSED_PARAMETER!>transform<!> : (T) -> R) : List<R> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
fun <T, R> Collection<T>.map(<!UNUSED_PARAMETER!>transform<!> : (T) -> R) : List<R> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||||
|
|
||||||
fun <T> java.lang.Iterable<T>.fold(<!UNUSED_PARAMETER!>initial<!>: T, <!UNUSED_PARAMETER!>operation<!>: (T, T) -> T): T {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
fun <T> Iterable<T>.fold(<!UNUSED_PARAMETER!>initial<!>: T, <!UNUSED_PARAMETER!>operation<!>: (T, T) -> T): T {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package test
|
package test
|
||||||
|
|
||||||
public abstract class ClassWithTypePExtendsIterableP<P>() : java.lang.Iterable<P> {
|
public abstract class ClassWithTypePExtendsIterableP<P>() : jet.Iterable<P> {
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
namespace test
|
namespace test
|
||||||
|
|
||||||
public abstract class test.ClassWithTypePExtendsIterableP</*0*/ P : jet.Any?> : java.lang.Iterable<P> {
|
public abstract class test.ClassWithTypePExtendsIterableP</*0*/ P : jet.Any?> : jet.Iterable<P> {
|
||||||
public final /*constructor*/ fun </*0*/ P : jet.Any?><init>(): test.ClassWithTypePExtendsIterableP<P>
|
public final /*constructor*/ fun </*0*/ P : jet.Any?><init>(): test.ClassWithTypePExtendsIterableP<P>
|
||||||
public abstract override /*1*/ fun iterator(): java.util.Iterator<P>?
|
public abstract override /*1*/ fun iterator(): jet.Iterator<P>
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
package test
|
package test
|
||||||
|
|
||||||
public open class ClassWithTypePRefNext<R : java.lang.Iterable<P>?, P>() : java.lang.Object()
|
public open class ClassWithTypePRefNext<R : jet.Iterable<P>?, P>() : java.lang.Object()
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
namespace test
|
namespace test
|
||||||
|
|
||||||
public open class test.ClassWithTypePRefNext</*0*/ R : java.lang.Iterable<P>?, /*1*/ P : jet.Any?> : java.lang.Object {
|
public open class test.ClassWithTypePRefNext</*0*/ R : jet.Iterable<P>?, /*1*/ P : jet.Any?> : java.lang.Object {
|
||||||
public final /*constructor*/ fun </*0*/ R : java.lang.Iterable<P>?, /*1*/ P : jet.Any?><init>(): test.ClassWithTypePRefNext<R, P>
|
public final /*constructor*/ fun </*0*/ R : jet.Iterable<P>?, /*1*/ P : jet.Any?><init>(): test.ClassWithTypePRefNext<R, P>
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ public class InnerClassesInGeneric<P, Q> {
|
|||||||
public class Inner {
|
public class Inner {
|
||||||
}
|
}
|
||||||
|
|
||||||
public class Inner2 extends Inner implements Iterable<P> {
|
public class Inner2 extends Inner {
|
||||||
public java.util.Iterator<P> iterator() {
|
public java.util.Iterator<P> iterator() {
|
||||||
throw new UnsupportedOperationException();
|
throw new UnsupportedOperationException();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ public open class InnerClassesInGeneric<P, Q>() : java.lang.Object() {
|
|||||||
public open class Inner() : java.lang.Object() {
|
public open class Inner() : java.lang.Object() {
|
||||||
}
|
}
|
||||||
|
|
||||||
public open class Inner2() : Inner(), java.lang.Iterable<P> {
|
public open class Inner2() : Inner() {
|
||||||
override fun iterator() : java.util.Iterator<P>? {
|
public open fun iterator() : jet.Iterator<P>? {
|
||||||
throw UnsupportedOperationException()
|
throw UnsupportedOperationException()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,8 +5,8 @@ public open class test.InnerClassesInGeneric</*0*/ P : jet.Any?, /*1*/ Q : jet.A
|
|||||||
public open class test.InnerClassesInGeneric.Inner : java.lang.Object {
|
public open class test.InnerClassesInGeneric.Inner : java.lang.Object {
|
||||||
public final /*constructor*/ fun <init>(): test.InnerClassesInGeneric.Inner
|
public final /*constructor*/ fun <init>(): test.InnerClassesInGeneric.Inner
|
||||||
}
|
}
|
||||||
public open class test.InnerClassesInGeneric.Inner2 : test.InnerClassesInGeneric.Inner, java.lang.Iterable<P> {
|
public open class test.InnerClassesInGeneric.Inner2 : test.InnerClassesInGeneric.Inner {
|
||||||
public final /*constructor*/ fun <init>(): test.InnerClassesInGeneric.Inner2
|
public final /*constructor*/ fun <init>(): test.InnerClassesInGeneric.Inner2
|
||||||
public open override /*1*/ fun iterator(): java.util.Iterator<P>?
|
public open fun iterator(): jet.Iterator<P>?
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ public open class test.ModalityOfFakeOverrides : java.util.AbstractList<jet.Stri
|
|||||||
public open override /*1*/ fun get(/*0*/ p0: jet.Int): jet.String?
|
public open override /*1*/ fun get(/*0*/ p0: jet.Int): jet.String?
|
||||||
public open override /*1*/ fun indexOf(/*0*/ p0: jet.Any?): jet.Int
|
public open override /*1*/ fun indexOf(/*0*/ p0: jet.Any?): jet.Int
|
||||||
public open override /*1*/ fun isEmpty(): jet.Boolean
|
public open override /*1*/ fun isEmpty(): jet.Boolean
|
||||||
public open override /*1*/ fun iterator(): java.util.Iterator<jet.String>?
|
public open override /*1*/ fun iterator(): jet.Iterator<jet.String>?
|
||||||
public open override /*1*/ fun lastIndexOf(/*0*/ p0: jet.Any?): jet.Int
|
public open override /*1*/ fun lastIndexOf(/*0*/ p0: jet.Any?): jet.Int
|
||||||
public open override /*1*/ fun listIterator(): java.util.ListIterator<jet.String>?
|
public open override /*1*/ fun listIterator(): java.util.ListIterator<jet.String>?
|
||||||
public open override /*1*/ fun listIterator(/*0*/ p0: jet.Int): java.util.ListIterator<jet.String>?
|
public open override /*1*/ fun listIterator(/*0*/ p0: jet.Int): java.util.ListIterator<jet.String>?
|
||||||
|
|||||||
Reference in New Issue
Block a user