ok
Direktori : /proc/self/root/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/packaging/ |
Current File : //proc/self/root/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/packaging/_typing.pyc |
� Bu�_c @ sW d Z d d g Z e r+ d d l m Z n e Z e rJ d d l m Z n d � Z d S( sG For neatly implementing static typing in packaging. `mypy` - the static type analysis tool we use - uses the `typing` module, which provides core functionality fundamental to mypy's functioning. Generally, `typing` would be imported at runtime and used in that fashion - it acts as a no-op at runtime and does not have any run-time overhead by design. As it turns out, `typing` is not vendorable - it uses separate sources for Python 2/Python 3. Thus, this codebase can not expect it to be present. To work around this, mypy allows the typing import to be behind a False-y optional to prevent it from running at runtime and type-comments can be used to remove the need for the types to be accessible directly during runtime. This module provides the False-y guard in a nicely named fashion so that a curious maintainer can reach here to read this. In packaging, all static-typing related imports should be guarded as follows: from pip._vendor.packaging._typing import TYPE_CHECKING if TYPE_CHECKING: from typing import ... Ref: https://github.com/python/mypy/issues/3216 t TYPE_CHECKINGt casti����( R ( R c C s | S( N( ( t type_t value( ( sN /opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/packaging/_typing.pyR / s N( t __doc__t __all__t Falset typingR R ( ( ( sN /opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/packaging/_typing.pyt <module> s