o
    8DiN                     @  s   d dl mZ d dlZd dlmZ 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G dd de
ZG dd de
ZG dd de
Zd!ddZd"dd ZdS )#    )annotationsN)auto)AutoNamec                   @  s*   e Zd Ze Z	 e Z	 e Z	 e ZdS )
ErrorLevelN)__name__
__module____qualname__r   IGNOREWARNRAISE	IMMEDIATE r   r   G/var/www/Datamplify/venv/lib/python3.10/site-packages/sqlglot/errors.pyr   	   s    r   c                   @     e Zd ZdS )SqlglotErrorNr   r   r   r   r   r   r   r          r   c                   @  r   )UnsupportedErrorNr   r   r   r   r   r      r   r   c                      s@   e Zd Z	dd fddZe							ddddZ  ZS )
ParseErrorNmessagestrerrors&t.Optional[t.List[t.Dict[str, t.Any]]]c                   s   t  | |p	g | _d S N)super__init__r   )selfr   r   	__class__r   r   r       s   zParseError.__init__descriptiont.Optional[str]linet.Optional[int]colstart_context	highlightend_contextinto_expressionreturnc	           	   
   C  s   | ||||||||dgS )N)r   r!   r#   r$   r%   r&   r'   r   )	clsr   r   r!   r#   r$   r%   r&   r'   r   r   r   new(   s   zParseError.newr   )r   r   r   r   )NNNNNNN)r   r   r   r    r!   r"   r#   r"   r$   r    r%   r    r&   r    r'   r    r(   r   )r   r   r   r   classmethodr*   __classcell__r   r   r   r   r      s    r   c                   @  r   )
TokenErrorNr   r   r   r   r   r-   D   r   r-   c                   @  r   )OptimizeErrorNr   r   r   r   r   r.   H   r   r.   c                   @  r   )SchemaErrorNr   r   r   r   r   r/   L   r   r/   c                   @  r   )ExecuteErrorNr   r   r   r   r   r0   P   r   r0   r   t.Sequence[t.Any]maximumintr(   r   c                 C  sF   dd | d | D }t | | }|dkr|d| d d|S )Nc                 S  s   g | ]}t |qS r   )r   ).0er   r   r   
<listcomp>U   s    z#concat_messages.<locals>.<listcomp>r   z... and z morez

)lenappendjoin)r   r2   msg	remainingr   r   r   concat_messagesT   s
   
r<   t.Sequence[ParseError]t.List[t.Dict[str, t.Any]]c                 C  s   dd | D S )Nc                 S  s   g | ]
}|j D ]}|qqS r   r   )r4   errore_dictr   r   r   r6   ]   s    z merge_errors.<locals>.<listcomp>r   r?   r   r   r   merge_errors\   s   rB   )r   r1   r2   r3   r(   r   )r   r=   r(   r>   )
__future__r   typingtenumr   sqlglot.helperr   r   	Exceptionr   r   r   r-   r.   r/   r0   r<   rB   r   r   r   r   <module>   s    %
