3
Y^                 @   s~   d dl mZ ddddddZdd	 Zd
d ZdddddZdd Zdd Zd$d%d&d'd(dZdd Z	dd Z
dd  Zd!d" Zd#S ))   )ImagePIL._imagingzPIL._tkinter_finderPIL._imagingftzPIL._imagingcms	PIL._webp)ZpiltkinterZ	freetype2Z
littlecms2Zwebpc             C   sB   | t krtd|  t |  }yt| dS  tk
r<   dS X d S )NzUnknown module %sTF)modules
ValueError
__import__ImportError)featuremodule r   ./tmp/pip-build-8app2_gc/Pillow/PIL/features.pycheck_module   s    r   c               C   s   dd t D S )Nc             S   s   g | ]}t |r|qS r   )r   ).0fr   r   r   
<listcomp>   s    z)get_supported_modules.<locals>.<listcomp>)r   r   r   r   r   get_supported_modules   s    r   ZjpegZjpeg2kziplibtiff)ZjpgZjpg_2000zlibr   c             C   s.   | t krtd|  t |  }|d ttjkS )NzUnknown codec %s_encoder)codecsr   dirr   core)r   codecr   r   r   check_codec%   s    r   c               C   s   dd t D S )Nc             S   s   g | ]}t |r|qS r   )r   )r   r   r   r   r   r   /   s    z(get_supported_codecs.<locals>.<listcomp>)r   r   r   r   r   get_supported_codecs.   s    r   HAVE_WEBPANIMHAVE_WEBPMUXHAVE_TRANSPARENCY	HAVE_RAQMHAVE_LIBJPEGTURBO)Z	webp_animZwebp_muxZtransp_webpZraqmZlibjpeg_turboc             C   sR   | t krtd|  t |  \}}yt|dgd}t||S  tk
rL   d S X d S )NzUnknown feature %sZPIL)fromlist)featuresr   r	   getattrr
   )r   r   flagZimported_moduler   r   r   check_feature;   s    
r'   c               C   s   dd t D S )Nc             S   s   g | ]}t |r|qS r   )r'   )r   r   r   r   r   r   I   s    z*get_supported_features.<locals>.<listcomp>)r$   r   r   r   r   get_supported_featuresH   s    r(   c             C   s0   | t krt| p.| tkr t| p.| tko.t| S )N)r   r   r   r   r$   r'   )r   r   r   r   checkL   s    r)   c              C   s"   t  } | jt  | jt  | S )N)r   extendr(   r   )retr   r   r   get_supportedR   s    r,   N)r   r   )r   r   )r   r    )r   r!   )r   r"   ) r   r   r   r   r   r   r   r$   r'   r(   r)   r,   r   r   r   r   <module>   s,   	