o
    QDi                     @  sT   d dl mZ d dlmZmZmZmZ ddlmZ er ddlm	Z	 G dd de
ZdS )	    )annotations)TYPE_CHECKINGListTypeUnion   )platform)Errorc                      sN   e Zd ZdZg dd fddZedddZedddZdddZ  Z	S )FrictionlessExceptionz^Main Frictionless exception

    Parameters:
        error (Error): an underlaying error

    )reasonserrorUnion[str, Error]r   List[Error]c                  sl   t jj}t||r|n||d| _|| _d| jj d| jj }|dd	dd |D  7 }t
 | d S )N)note[z]  c                 s  s    | ]
}d |j  dV  qdS )()N)message).0reason r   O/var/www/Datamplify/venv/lib/python3.10/site-packages/frictionless/exception.py	<genexpr>   s    z1FrictionlessException.__init__.<locals>.<genexpr>)r   frictionlessr	   
isinstance_FrictionlessException__error_FrictionlessException__reasonsr   typer   joinsuper__init__)selfr   r   
ErrorClassr   	__class__r   r   r!      s   zFrictionlessException.__init__returnr	   c                 C     | j S N)r   r"   r   r   r   r         zFrictionlessException.errorc                 C  r'   r(   )r   r)   r   r   r   r      r*   zFrictionlessException.reasonsc                 C  s   | j r| j S | jgS r(   )r   r   r)   r   r   r   	to_errors%   s   zFrictionlessException.to_errors)r   r   r   r   )r&   r	   )r&   r   )
__name__
__module____qualname____doc__r!   propertyr   r   r+   __classcell__r   r   r$   r   r
      s    r
   N)
__future__r   typingr   r   r   r   r   r   r	   	Exceptionr
   r   r   r   r   <module>   s    