U
    ={f                     @  s   d Z ddlmZ ddlZddlmZmZ ddlm	Z	 ddl
mZ dZd	e  d
Zed ZG dd dZG dd deeZG dd deeZG dd deeZG dd deZG dd deZe	eZdS )zPydantic-specific errors.    )annotationsN)LiteralSelf   )getattr_migration)version_short)PydanticUserErrorPydanticUndefinedAnnotationPydanticImportErrorPydanticSchemaGenerationErrorPydanticInvalidForJsonSchemaPydanticErrorCodeszhttps://errors.pydantic.dev/z/u/)(zclass-not-fully-definedzcustom-json-schemazdecorator-missing-fieldzdiscriminator-no-fieldzdiscriminator-alias-typezdiscriminator-needs-literalzdiscriminator-aliaszdiscriminator-validatorzcallable-discriminator-no-tagztyped-dict-versionzmodel-field-overriddenzmodel-field-missing-annotationzconfig-bothzremoved-kwargsinvalid-for-json-schemazjson-schema-already-usedzbase-model-instantiatedundefined-annotationschema-for-unknown-typeimport-errorzcreate-model-field-definitionszcreate-model-config-basezvalidator-no-fieldszvalidator-invalid-fieldszvalidator-instance-methodzroot-validator-pre-skipz model-serializer-instance-methodzvalidator-field-config-infozvalidator-v1-signaturezvalidator-signaturezfield-serializer-signaturezmodel-serializer-signaturezmultiple-field-serializersZinvalid_annotated_typeztype-adapter-config-unusedzroot-model-extrazunevaluable-type-annotationz dataclass-init-false-extra-allowzclashing-init-and-init-varzmodel-config-invalid-field-namec                   @  s0   e Zd ZdZddddddZddd	d
ZdS )PydanticErrorMixinzA mixin class for common functionality shared by all Pydantic-specific errors.

    Attributes:
        message: A message describing the error.
        code: An optional error code from PydanticErrorCodes enum.
    strzPydanticErrorCodes | NoneNone)messagecodereturnc                C  s   || _ || _d S )Nr   r   )selfr   r    r   N/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/pydantic/errors.py__init__L   s    zPydanticErrorMixin.__init__)r   c                 C  s*   | j d kr| jS | j dt | j  S d S )Nz 

For further information visit )r   r   DEV_ERROR_DOCS_URL)r   r   r   r   __str__P   s    
zPydanticErrorMixin.__str__N)__name__
__module____qualname____doc__r   r   r   r   r   r   r   D   s   r   c                   @  s   e Zd ZdZdS )r   z1An error raised due to incorrect use of Pydantic.N)r   r    r!   r"   r   r   r   r   r   W   s   r   c                      s>   e Zd ZdZdddd fddZeddd	d
dZ  ZS )r	   zA subclass of `NameError` raised when handling undefined annotations during `CoreSchema` generation.

    Attributes:
        name: Name of the error.
        message: Description of the error.
    r   r   )namer   r   c                   s   || _ t j|dd d S )Nr   r   )r#   superr   )r   r#   r   	__class__r   r   r   c   s    z$PydanticUndefinedAnnotation.__init__	NameErrorr   )
name_errorr   c                 C  sF   z
|j }W n* tk
r4   tdt|d}Y nX | |t|dS )zConvert a `NameError` to a `PydanticUndefinedAnnotation` error.

        Args:
            name_error: `NameError` to be converted.

        Returns:
            Converted `PydanticUndefinedAnnotation` error.
        z	.*'(.+?)'r   )r#   r   )r#   AttributeErrorresearchr   group)clsr(   r#   r   r   r   from_name_errorg   s
    

z+PydanticUndefinedAnnotation.from_name_error)r   r    r!   r"   r   classmethodr.   __classcell__r   r   r%   r   r	   [   s   r	   c                      s(   e Zd ZdZddd fddZ  ZS )r
   zAn error raised when an import fails due to module changes between V1 and V2.

    Attributes:
        message: Description of the error.
    r   r   r   r   c                   s   t  j|dd d S )Nr   r   r$   r   r   r   r%   r   r   r      s    zPydanticImportError.__init__r   r    r!   r"   r   r0   r   r   r%   r   r
   x   s   r
   c                      s(   e Zd ZdZddd fddZ  ZS )r   zAn error raised during failures to generate a `CoreSchema` for some type.

    Attributes:
        message: Description of the error.
    r   r   r1   c                   s   t  j|dd d S )Nr   r2   r3   r4   r%   r   r   r      s    z&PydanticSchemaGenerationError.__init__r5   r   r   r%   r   r      s   r   c                      s(   e Zd ZdZddd fddZ  ZS )r   zAn error raised during failures to generate a JSON schema for some `CoreSchema`.

    Attributes:
        message: Description of the error.
    r   r   r1   c                   s   t  j|dd d S )Nr   r2   r3   r4   r%   r   r   r      s    z%PydanticInvalidForJsonSchema.__init__r5   r   r   r%   r   r      s   r   )r"   
__future__r   Z_annotationsr*   Ztyping_extensionsr   r   Z
_migrationr   versionr   __all__r   r   r   	TypeErrorr   r'   r	   ImportErrorr
   r   r   r   __getattr__r   r   r   r   <module>   s"   ,