import java.util.Enumeration inline fun java.util.Enumeration.iterator() = object: Iterator { override fun hasNext(): Boolean = hasMoreElements() override fun next() = nextElement() } fun T?.iterator() = object { var hasNext = this@iterator != null private set fun hasNext() = hasNext fun next() : T { if (hasNext) { hasNext = false return this@iterator!! } throw java.util.NoSuchElementException() } } fun main(args : Array) { val i : Int? = 1 for (x in i) { System.out.println(x) } }