summaryrefslogtreecommitdiff
path: root/concurrent/futures/_compat.py
diff options
context:
space:
mode:
Diffstat (limited to 'concurrent/futures/_compat.py')
-rw-r--r--concurrent/futures/_compat.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/concurrent/futures/_compat.py b/concurrent/futures/_compat.py
index 9a9ed7c..1146232 100644
--- a/concurrent/futures/_compat.py
+++ b/concurrent/futures/_compat.py
@@ -2,7 +2,8 @@ from keyword import iskeyword as _iskeyword
from operator import itemgetter as _itemgetter
import sys as _sys
-def namedtuple(typename, field_names, verbose=False):
+
+def namedtuple(typename, field_names):
"""Returns a new subclass of tuple with named fields.
>>> Point = namedtuple('Point', 'x y')
@@ -79,16 +80,15 @@ def namedtuple(typename, field_names, verbose=False):
return tuple(self) \n\n''' % locals()
for i, name in enumerate(field_names):
template += ' %s = _property(_itemgetter(%d))\n' % (name, i)
- if verbose:
- print template
# Execute the template string in a temporary namespace and
# support tracing utilities by setting a value for frame.f_globals['__name__']
namespace = dict(_itemgetter=_itemgetter, __name__='namedtuple_%s' % typename,
_property=property, _tuple=tuple)
try:
- exec template in namespace
- except SyntaxError, e:
+ exec(template, namespace)
+ except SyntaxError:
+ e = _sys.exc_info()[1]
raise SyntaxError(e.message + ':\n' + template)
result = namespace[typename]