a
    »ĻOc  ć                   @   s@  d dl mZ d dlmZ G dd deZG dd de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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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eZG d#d$ d$eZG d%d& d&eZd'S )(é    )Śunicode_literals)ŚOptionalc                   @   s   e Zd ZdS )ŚTOMLKitErrorN)Ś__name__Ś
__module__Ś__qualname__© r   r   śI/var/www/html/gsl.tools/lib/python3.9/site-packages/tomlkit/exceptions.pyr      s   r   c                       s:   e Zd ZdZd	 fdd	Zedd Zedd Z  ZS )
Ś
ParseErrorzĆ
    This error occurs when the parser encounters a syntax error
    in the TOML being parsed. The error references the line and
    location within the line where the error was encountered.
    Nc                    s:   || _ || _|d u rd}tt|  d || j | j”” d S )NzTOML parse errorz{} at line {} col {})Ś_lineŚ_colŚsuperr
   Ś__init__Śformat©ŚselfŚlineŚcolŚmessage©Ś	__class__r   r	   r      s    
’zParseError.__init__c                 C   s   | j S ©N)r   ©r   r   r   r	   r      s    zParseError.linec                 C   s   | j S r   )r   r   r   r   r	   r   #   s    zParseError.col)N)	r   r   r   Ś__doc__r   Śpropertyr   r   Ś__classcell__r   r   r   r	   r
      s    ’
r
   c                       s    e Zd ZdZ fddZ  ZS )ŚMixedArrayTypesErrorz@
    An array was found that had two or more element types.
    c                    s   d}t t| j|||d d S )NzMixed types found in array©r   )r   r   r   r   r   r   r	   r   -   s    zMixedArrayTypesError.__init__©r   r   r   r   r   r   r   r   r   r	   r   (   s   r   c                       s    e Zd ZdZ fddZ  ZS )ŚInvalidNumberErrorz3
    A numeric field was improperly specified.
    c                    s   d}t t| j|||d d S )NzInvalid numberr   )r   r   r   r   r   r   r	   r   8   s    zInvalidNumberError.__init__r   r   r   r   r	   r   3   s   r   c                       s    e Zd ZdZ fddZ  ZS )ŚInvalidDateTimeErrorz4
    A datetime field was improperly specified.
    c                    s   d}t t| j|||d d S )NzInvalid datetimer   )r   r    r   r   r   r   r	   r   C   s    zInvalidDateTimeError.__init__r   r   r   r   r	   r    >   s   r    c                       s    e Zd ZdZ fddZ  ZS )ŚInvalidDateErrorś0
    A date field was improperly specified.
    c                    s   d}t t| j|||d d S )NzInvalid dater   )r   r!   r   r   r   r   r	   r   N   s    zInvalidDateError.__init__r   r   r   r   r	   r!   I   s   r!   c                       s    e Zd ZdZ fddZ  ZS )ŚInvalidTimeErrorr"   c                    s   d}t t| j|||d d S )NzInvalid timer   )r   r#   r   r   r   r   r	   r   Y   s    zInvalidTimeError.__init__r   r   r   r   r	   r#   T   s   r#   c                       s    e Zd ZdZ fddZ  ZS )ŚInvalidNumberOrDateErrorz;
    A numeric or date field was improperly specified.
    c                    s   d}t t| j|||d d S )NzInvalid number or date formatr   )r   r$   r   r   r   r   r	   r   d   s    z!InvalidNumberOrDateError.__init__r   r   r   r   r	   r$   _   s   r$   c                       s    e Zd ZdZ fddZ  ZS )ŚInvalidUnicodeValueErrorz2
    A unicode code was improperly specified.
    c                    s   d}t t| j|||d d S )NzInvalid unicode valuer   )r   r%   r   r   r   r   r	   r   o   s    z!InvalidUnicodeValueError.__init__r   r   r   r   r	   r%   j   s   r%   c                       s    e Zd ZdZ fddZ  ZS )ŚUnexpectedCharErrorz;
    An unexpected character was found during parsing.
    c                    s(   d  t|”}tt| j|||d d S )NzUnexpected character: {}r   )r   Śreprr   r&   r   ©r   r   r   Ścharr   r   r   r	   r   z   s    zUnexpectedCharError.__init__r   r   r   r   r	   r&   u   s   r&   c                       s    e Zd ZdZ fddZ  ZS )ŚEmptyKeyErrorz0
    An empty key was found during parsing.
    c                    s   d}t t| j|||d d S )Nz	Empty keyr   )r   r*   r   r   r   r   r	   r      s    zEmptyKeyError.__init__r   r   r   r   r	   r*      s   r*   c                       s    e Zd ZdZ fddZ  ZS )ŚEmptyTableNameErrorz7
    An empty table name was found during parsing.
    c                    s   d}t t| j|||d d S )NzEmpty table namer   )r   r+   r   r   r   r   r	   r      s    zEmptyTableNameError.__init__r   r   r   r   r	   r+      s   r+   c                       s    e Zd ZdZ fddZ  ZS )ŚInvalidCharInStringErrorz@
    The string being parsed contains an invalid character.
    c                    s(   d  t|”}tt| j|||d d S )NzInvalid character {} in stringr   )r   r'   r   r,   r   r(   r   r   r	   r      s    z!InvalidCharInStringError.__init__r   r   r   r   r	   r,      s   r,   c                       s    e Zd ZdZ fddZ  ZS )ŚUnexpectedEofErrorzD
    The TOML being parsed ended before the end of a statement.
    c                    s   d}t t| j|||d d S )NzUnexpected end of filer   )r   r-   r   r   r   r   r	   r   ¦   s    zUnexpectedEofError.__init__r   r   r   r   r	   r-   ”   s   r-   c                       s"   e Zd ZdZd fdd	Z  ZS )ŚInternalParserErrorz6
    An error that indicates a bug in the parser.
    Nc                    s0   d}|r|d  |”7 }tt| j|||d d S )NzInternal parser errorz ({})r   )r   r   r.   r   )r   r   r   r   Śmsgr   r   r	   r   ±   s    zInternalParserError.__init__)Nr   r   r   r   r	   r.   ¬   s    ’r.   c                       s    e Zd ZdZ fddZ  ZS )ŚNonExistentKeyz&
    A non-existent key was used.
    c                    s   d  |”}tt|  |” d S )NzKey "{}" does not exist.)r   r   r0   r   ©r   Śkeyr   r   r   r	   r   Ą   s    
zNonExistentKey.__init__r   r   r   r   r	   r0   »   s   r0   c                       s    e Zd ZdZ fddZ  ZS )ŚKeyAlreadyPresentz*
    An already present key was used.
    c                    s   d  |”}tt|  |” d S )NzKey "{}" already exists.)r   r   r3   r   r1   r   r   r	   r   Ė   s    
zKeyAlreadyPresent.__init__r   r   r   r   r	   r3   Ę   s   r3   c                       s   e Zd Z fddZ  ZS )ŚInvalidControlCharc                    sF   d}|dk r|d7 }|t |7 }d ||”}tt| j|||d d S )Nz\u00é   Ś0zXControl characters (codes less than 0x1f and 0x7f) are not allowed in {}, use {} insteadr   )Śstrr   r   r4   r   )r   r   r   r)   ŚtypeZdisplay_coder   r   r   r	   r   Ņ   s    ’’zInvalidControlChar.__init__)r   r   r   r   r   r   r   r   r	   r4   Ń   s   r4   N)Ś
__future__r   Śtypingr   Ś	Exceptionr   Ś
ValueErrorr
   r   r   r    r!   r#   r$   r%   r&   r*   r+   r,   r-   r.   ŚKeyErrorr0   r3   r4   r   r   r   r	   Ś<module>   s&   