summaryrefslogtreecommitdiff
path: root/Cython/Debugger/libpython.py
diff options
context:
space:
mode:
authorStefan Behnel <stefan_ml@behnel.de>2015-07-25 19:40:01 +0200
committerStefan Behnel <stefan_ml@behnel.de>2015-07-25 19:40:01 +0200
commit38abf1b65388fa723312b4c7aed36d9694454d36 (patch)
tree290ab846ff390876ca5a63a792a0253d69dc4de3 /Cython/Debugger/libpython.py
parentcaa2fe39d745680c616c091611f0e894832dd740 (diff)
downloadcython-38abf1b65388fa723312b4c7aed36d9694454d36.tar.gz
make dict iteration compatible with Py2/Py3
Diffstat (limited to 'Cython/Debugger/libpython.py')
-rw-r--r--Cython/Debugger/libpython.py17
1 files changed, 9 insertions, 8 deletions
diff --git a/Cython/Debugger/libpython.py b/Cython/Debugger/libpython.py
index 6c1cc3056..ca4e74d56 100644
--- a/Cython/Debugger/libpython.py
+++ b/Cython/Debugger/libpython.py
@@ -463,7 +463,7 @@ def _write_instance_repr(out, visited, name, pyop_attrdict, address):
if isinstance(pyop_attrdict, PyDictObjectPtr):
out.write('(')
first = True
- for pyop_arg, pyop_val in pyop_attrdict.iteritems():
+ for pyop_arg, pyop_val in pyop_attrdict.items():
if not first:
out.write(', ')
first = False
@@ -483,8 +483,7 @@ class InstanceProxy(object):
def __repr__(self):
if isinstance(self.attrdict, dict):
- kwargs = ', '.join("%s=%r" % (arg, val)
- for arg, val in self.attrdict.iteritems())
+ kwargs = ', '.join("%s=%r" % (arg, val) for arg, val in self.attrdict.items())
return '<%s(%s) at remote 0x%x>' % (
self.cl_name, kwargs, self.address)
else:
@@ -693,7 +692,7 @@ class PyDictObjectPtr(PyObjectPtr):
def iteritems(self):
'''
Yields a sequence of (PyObjectPtr key, PyObjectPtr value) pairs,
- analagous to dict.iteritems()
+ analagous to dict.items()
'''
for i in safe_range(self.field('ma_mask') + 1):
ep = self.field('ma_table') + i
@@ -702,6 +701,8 @@ class PyDictObjectPtr(PyObjectPtr):
pyop_key = PyObjectPtr.from_pyobject_ptr(ep['me_key'])
yield (pyop_key, pyop_value)
+ items = iteritems
+
def proxyval(self, visited):
# Guard against infinite loops:
if self.as_address() in visited:
@@ -709,7 +710,7 @@ class PyDictObjectPtr(PyObjectPtr):
visited.add(self.as_address())
result = {}
- for pyop_key, pyop_value in self.iteritems():
+ for pyop_key, pyop_value in self.items():
proxy_key = pyop_key.proxyval(visited)
proxy_value = pyop_value.proxyval(visited)
result[proxy_key] = proxy_value
@@ -724,7 +725,7 @@ class PyDictObjectPtr(PyObjectPtr):
out.write('{')
first = True
- for pyop_key, pyop_value in self.iteritems():
+ for pyop_key, pyop_value in self.items():
if not first:
out.write(', ')
first = False
@@ -924,7 +925,7 @@ class PyFrameObjectPtr(PyObjectPtr):
return
pyop_globals = self.pyop_field('f_globals')
- return pyop_globals.iteritems()
+ return iter(pyop_globals.items())
def iter_builtins(self):
'''
@@ -935,7 +936,7 @@ class PyFrameObjectPtr(PyObjectPtr):
return
pyop_builtins = self.pyop_field('f_builtins')
- return pyop_builtins.iteritems()
+ return iter(pyop_builtins.items())
def get_var_by_name(self, name):
'''