U
    Òøïc  ã                   @   s~   d dl mZ G dd„ deƒZG dd„ deƒZG dd„ deƒZG dd	„ d	eƒZG d
d„ deƒZ	i Z
eee	efdd„Zdd„ ZdS )é   )Úpytz_importedc                   @   s   e Zd ZdZdS )ÚPytzUsageWarninga^  Warning raised when accessing features specific to ``pytz``'s interface.

    This warning is used to direct users of ``pytz``-specific features like the
    ``localize`` and ``normalize`` methods towards using the standard
    ``tzinfo`` interface, so that these shims can be replaced with one of the
    underlying libraries they are wrapping.
    N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__© r	   r	   úE/tmp/pip-unpacked-wheel-pe1vybbg/pytz_deprecation_shim/_exceptions.pyr      s   r   c                   @   s   e Zd ZdZdS )ÚUnknownTimeZoneErrorz6Raised when no time zone is found for a specified key.Nr   r	   r	   r	   r
   r      s   r   c                   @   s   e Zd ZdZdS )ÚInvalidTimeErrorz8The base class for exceptions related to folds and gaps.Nr   r	   r	   r	   r
   r      s   r   c                   @   s   e Zd ZdZdS )ÚAmbiguousTimeErrorzCException raised when ``is_dst=None`` for an ambiguous time (fold).Nr   r	   r	   r	   r
   r      s   r   c                   @   s   e Zd ZdZdS )ÚNonExistentTimeErrorzDException raised when ``is_dst=None`` for a non-existent time (gap).Nr   r	   r	   r	   r
   r      s   r   c           	   
   C   s„   t s
tƒ sd S dd l}G dd„ d| |jƒ}G dd„ d||jƒ}G dd„ d||jƒ}G dd	„ d	||jƒ}t  | |||||||i¡ d S )
Né    c                   @   s   e Zd ZdS )z3_make_pytz_derived_errors.<locals>.InvalidTimeErrorN©r   r   r   r	   r	   r	   r
   r   ,   s   r   c                   @   s   e Zd ZdS )z5_make_pytz_derived_errors.<locals>.AmbiguousTimeErrorNr   r	   r	   r	   r
   r   /   s   r   c                   @   s   e Zd ZdS )z7_make_pytz_derived_errors.<locals>.NonExistentTimeErrorNr   r	   r	   r	   r
   r   2   s   r   c                   @   s   e Zd ZdS )z7_make_pytz_derived_errors.<locals>.UnknownTimeZoneErrorNr   r	   r	   r	   r
   r   7   s   r   )ÚPYTZ_BASE_ERROR_MAPPINGr   Úpytzr   r   r   r   Úupdate)	ZInvalidTimeError_ZAmbiguousTimeError_ZNonExistentTimeError_ZUnknownTimeZoneError_r   r   r   r   r   r	   r	   r
   Ú_make_pytz_derived_errors!   s0    

 ÿ
 ÿ    üÿr   c                 C   s   t ƒ  t | | ¡}||ƒS )N)r   r   Úget)Úexc_typeÚmsgZout_exc_typer	   r	   r
   Úget_exceptionF   s    r   N)Z_commonr   ÚRuntimeWarningr   ÚKeyErrorr   Ú	Exceptionr   r   r   r   r   r   r	   r	   r	   r
   Ú<module>   s   
ü
%