diff options
author | Araq <rumpf_a@web.de> | 2014-01-22 17:32:38 +0100 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2014-01-22 17:32:38 +0100 |
commit | 37229df7fc044fe108d2f4d88f127141cabeb6a6 (patch) | |
tree | 2dd7dbacaa4afecdd9c6bde5180c43df24b0a914 /tests/iter | |
parent | 85a5bfe60520a59ff9ce493dfa65bf9cbd86059e (diff) | |
download | Nim-37229df7fc044fe108d2f4d88f127141cabeb6a6.tar.gz |
next steps for closure iterators
Diffstat (limited to 'tests/iter')
-rw-r--r-- | tests/iter/tanoniter1.nim | 32 | ||||
-rw-r--r-- | tests/iter/titer2.nim | 2 |
2 files changed, 33 insertions, 1 deletions
diff --git a/tests/iter/tanoniter1.nim b/tests/iter/tanoniter1.nim new file mode 100644 index 000000000..9db5ab8ec --- /dev/null +++ b/tests/iter/tanoniter1.nim @@ -0,0 +1,32 @@ +discard """ + output: '''1 +2 +3 +4 +1 +2''' +""" + +proc factory(a, b: int): iterator (): int = + iterator foo(): int = + var x = a + while x <= b: + yield x + inc x + return foo + +proc factory2(a, b: int): iterator (): int = + return iterator (): int = + var x = a + while x <= b: + yield x + inc x + +let foo = factory 1, 4 + +for f in foo(): + echo f + +let foo2 = factory2 1,2 + +for f in foo2(): echo f diff --git a/tests/iter/titer2.nim b/tests/iter/titer2.nim index dab2713e8..f8967109e 100644 --- a/tests/iter/titer2.nim +++ b/tests/iter/titer2.nim @@ -1,6 +1,6 @@ discard """ output: '''true''' - cmd: "nimrod cc --gc:none --hints:on $# $#" + cmd: "nimrod cc --gc:none --hints:on --warnings:off $# $#" """ import hashes |