Author: Raffael Tfirst <raffael.tfi...@gmail.com>
Branch: py3.5-async
Changeset: r85892:e38fb5ed53db
Date: 2016-07-28 15:23 +0200
http://bitbucket.org/pypy/pypy/changeset/e38fb5ed53db/

Log:    Implement GET_AITER and GET_ANEXT

diff --git a/pypy/interpreter/pyopcode.py b/pypy/interpreter/pyopcode.py
--- a/pypy/interpreter/pyopcode.py
+++ b/pypy/interpreter/pyopcode.py
@@ -1466,12 +1466,16 @@
         self.pushvalue(w_result)
     
     def GET_AITER(self, oparg, next_instr):
-        w_iterable = self.popvalue()
-        self.pushvalue(w_iterable)
+        w_obj = self.popvalue()
+        w_iter = w_obj.aiter()
+        w_awaitable = w_iter._GetAwaitableIter()
+        self.pushvalue(w_awaitable)
     
     def GET_ANEXT(self, oparg, next_instr):
-        w_iterable = self.popvalue()
-        self.pushvalue(w_iterable)
+        w_aiter = self.popvalue()
+        w_next_iter = w_aiter.anext()
+        w_awaitable = w_next_iter._GetAwaitableIter()
+        self.pushvalue(w_awaitable)
         
 ### ____________________________________________________________ ###
 
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to