# This file is dual licensed under the terms of the Apache License, Version # 2.0, and the BSD License. See the LICENSE file in the root of this repository # for complete details. from __future__ import absolute_import, division, print_function import sys from ._typing import TYPE_CHECKING if TYPE_CHECKING: # pragma: no cover from typing import Any, Dict, Tuple, Type PY2 = sys.version_info[0] == 2 PY3 = sys.version_info[0] == 3 # flake8: noqa if PY3: string_types = (str,) else: string_types = (basestring,) def with_metaclass(meta, *bases): # type: (Type[Any], Tuple[Type[Any], ...]) -> Any """ Create a base class with a metaclass. """ # This requires a bit of explanation: the basic idea is to make a dummy # metaclass for one level of class instantiation that replaces itself with # the actual metaclass. class metaclass(meta): # type: ignore def __new__(cls, name, this_bases, d): # type: (Type[Any], str, Tuple[Any], Dict[Any, Any]) -> Any return meta(name, bases, d) return type.__new__(metaclass, "temporary_class", (), {})
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
__pycache__ | Folder | 0755 |
|
|
.__about__.pyo.40009 | File | 799 B | 0644 |
|
.__init__.pyo.40009 | File | 629 B | 0644 |
|
._compat.pyo.40009 | File | 1.42 KB | 0644 |
|
._structures.pyo.40009 | File | 4.24 KB | 0644 |
|
._typing.pyo.40009 | File | 1.6 KB | 0644 |
|
.requirements.pyo.40009 | File | 5.38 KB | 0644 |
|
.specifiers.pyo.40009 | File | 26.07 KB | 0644 |
|
.utils.pyo.40009 | File | 2.18 KB | 0644 |
|
.version.pyo.40009 | File | 18.13 KB | 0644 |
|
__about__.py | File | 736 B | 0644 |
|
__about__.pyc | File | 799 B | 0644 |
|
__about__.pyo | File | 799 B | 0644 |
|
__init__.py | File | 562 B | 0644 |
|
__init__.pyc | File | 629 B | 0644 |
|
__init__.pyo | File | 629 B | 0644 |
|
_compat.py | File | 1.1 KB | 0644 |
|
_compat.pyc | File | 1.42 KB | 0644 |
|
_compat.pyo | File | 1.42 KB | 0644 |
|
_structures.py | File | 1.97 KB | 0644 |
|
_structures.pyc | File | 4.24 KB | 0644 |
|
_structures.pyo | File | 4.24 KB | 0644 |
|
_typing.py | File | 1.78 KB | 0644 |
|
_typing.pyc | File | 1.6 KB | 0644 |
|
_typing.pyo | File | 1.6 KB | 0644 |
|
markers.py | File | 9.27 KB | 0644 |
|
markers.pyc | File | 12.43 KB | 0644 |
|
markers.pyo | File | 12.3 KB | 0644 |
|
requirements.py | File | 4.79 KB | 0644 |
|
requirements.pyc | File | 5.38 KB | 0644 |
|
requirements.pyo | File | 5.38 KB | 0644 |
|
specifiers.py | File | 31.2 KB | 0644 |
|
specifiers.pyc | File | 26.07 KB | 0644 |
|
specifiers.pyo | File | 26.07 KB | 0644 |
|
tags.py | File | 23.5 KB | 0644 |
|
tags.pyc | File | 22.5 KB | 0644 |
|
tags.pyo | File | 22.48 KB | 0644 |
|
utils.py | File | 1.77 KB | 0644 |
|
utils.pyc | File | 2.18 KB | 0644 |
|
utils.pyo | File | 2.18 KB | 0644 |
|
version.py | File | 15.11 KB | 0644 |
|
version.pyc | File | 18.13 KB | 0644 |
|
version.pyo | File | 18.13 KB | 0644 |
|