| fun testBreakFor() { |
| val xs: IntArray = IntArray(size = 10, init = local fun <anonymous>(i: Int): Int { |
| return i |
| } |
| ) |
| var k: Int = 0 |
| { // BLOCK |
| val tmp0_iterator: IntIterator = xs.iterator() |
| while (tmp0_iterator.hasNext()) { // BLOCK |
| val x: Int = tmp0_iterator.next() |
| { // BLOCK |
| when { |
| greater(arg0 = k, arg1 = 2) -> break |
| } |
| } |
| } |
| } |
| } |
| |
| fun testBreakWhile() { |
| var k: Int = 0 |
| while (less(arg0 = k, arg1 = 10)) { // BLOCK |
| when { |
| greater(arg0 = k, arg1 = 2) -> break |
| } |
| } |
| } |
| |
| fun testBreakDoWhile() { |
| var k: Int = 0 |
| { // BLOCK |
| do// COMPOSITE { |
| when { |
| greater(arg0 = k, arg1 = 2) -> break |
| } |
| // } while (less(arg0 = k, arg1 = 10)) |
| } |
| } |
| |
| fun testContinueFor() { |
| val xs: IntArray = IntArray(size = 10, init = local fun <anonymous>(i: Int): Int { |
| return i |
| } |
| ) |
| var k: Int = 0 |
| { // BLOCK |
| val tmp0_iterator: IntIterator = xs.iterator() |
| while (tmp0_iterator.hasNext()) { // BLOCK |
| val x: Int = tmp0_iterator.next() |
| { // BLOCK |
| when { |
| greater(arg0 = k, arg1 = 2) -> continue |
| } |
| } |
| } |
| } |
| } |
| |
| fun testContinueWhile() { |
| var k: Int = 0 |
| while (less(arg0 = k, arg1 = 10)) { // BLOCK |
| when { |
| greater(arg0 = k, arg1 = 2) -> continue |
| } |
| } |
| } |
| |
| fun testContinueDoWhile() { |
| var k: Int = 0 |
| var s: String = "" |
| { // BLOCK |
| do// COMPOSITE { |
| { // BLOCK |
| k = k.inc() |
| k |
| } /*~> Unit */ |
| when { |
| greater(arg0 = k, arg1 = 2) -> continue |
| } |
| s = s.plus(other = k + ";") |
| // } while (less(arg0 = k, arg1 = 10)) |
| } |
| when { |
| EQEQ(arg0 = s, arg1 = "1;2;").not() -> throw AssertionError(p0 = s) |
| } |
| } |