Browse Source

Addressing feedback from pull request

pull/1539/head
Mathias J. Hennig 10 years ago
parent
commit
b3767ae59f
  1. 11
      flask/_compat.py

11
flask/_compat.py

@ -54,15 +54,14 @@ else:
def with_metaclass(meta, *bases): def with_metaclass(meta, *bases):
"""Create a base class with a metaclass."""
# This requires a bit of explanation: the basic idea is to make a # This requires a bit of explanation: the basic idea is to make a
# dummy metaclass for one level of class instantiation that replaces # dummy metaclass for one level of class instantiation that replaces
# itself with the actual metaclass. # itself with the actual metaclass.
# class metaclass(type):
# This has the advantage over six.with_metaclass in that it does not def __new__(cls, name, this_bases, d):
# introduce dummy classes into the final MRO. return meta(name, bases, d)
constructor = lambda c, name, b, dct: meta(name, bases, dct) return type.__new__(metaclass, 'temporary_class', (), {})
metaclass = type('with_metaclass', (type,), {'__new__': constructor})
return type.__new__(metaclass, 'temporary_class', (object,), {})
# Certain versions of pypy have a bug where clearing the exception stack # Certain versions of pypy have a bug where clearing the exception stack

Loading…
Cancel
Save