summaryrefslogtreecommitdiff
path: root/tests/micropython/native_gen.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/micropython/native_gen.py')
-rw-r--r--tests/micropython/native_gen.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/micropython/native_gen.py b/tests/micropython/native_gen.py
new file mode 100644
index 000000000..30c4c37be
--- /dev/null
+++ b/tests/micropython/native_gen.py
@@ -0,0 +1,21 @@
+# test for native generators
+
+# simple generator with yield and return
+@micropython.native
+def gen1(x):
+ yield x
+ yield x + 1
+ return x + 2
+g = gen1(3)
+print(next(g))
+print(next(g))
+try:
+ next(g)
+except StopIteration as e:
+ print(e.args[0])
+
+# using yield from
+@micropython.native
+def gen2(x):
+ yield from range(x)
+print(list(gen2(3)))