3
ˆdÿ  ã               @   sì   d dl Z d dlZdd„ ZedƒZejedkdƒZedƒZejedkdƒZedƒZejedkd	ƒZ	ed
ƒZ
eje
dkdƒZedƒZejedkdƒZedƒZejedkdƒZedƒZejedkdƒZedƒZejedkdƒZedk	rèd dlZdS )é    Nc             C   s,   yt j| ƒ}W n tk
r"   dS X |S dS )a$  
    Optionally import a module, returning None if that module is unavailable.

    Parameters
    ----------
    name : Str
        The name of the module being imported.

    Returns
    -------
    None or module
        None if the module is not available, and the module otherwise.

    N)Ú	importlibÚimport_moduleÚImportError)ÚnameÚmodule© r   úF/tmp/pip-build-7vycvbft/traits/traits/testing/optional_dependencies.pyÚoptional_import   s
    r	   ÚcythonzCython not availableÚmypyzMypy not availableÚnumpyzNumPy not availableznumpy.typingznumpy.typing not availableÚpkg_resourceszpkg_resources not availableÚpyfacezPyface not availableÚsphinxzSphinx not availableÚtraitsuizTraitsUI not available)r   Zunittestr	   r
   ZskipIfZrequires_cythonr   Zrequires_mypyr   Zrequires_numpyZnumpy_typingZrequires_numpy_typingr   Zrequires_pkg_resourcesr   Zrequires_pyfacer   Zrequires_sphinxr   Zrequires_traitsuiZtraitsui.apir   r   r   r   Ú<module>   s,   