a
    ]ŠÝgÀ  ã                   @   s*   d Z ddlmZ G dd„ dƒZdd„ ZdS )z¦Utilities for storing collections of error messages.

.. warning::

    This module is treated as private API.
    Users should not need to use this module directly.
é    )ÚSCHEMAc                   @   s"   e Zd Zdd„ Zedfdd„ZdS )Ú
ErrorStorec                 C   s
   i | _ d S ©N)Úerrors)Úself© r   úe/var/www/html/cobodadashboardai.evdpl.com/venv/lib/python3.9/site-packages/marshmallow/error_store.pyÚ__init__   s    zErrorStore.__init__Nc                 C   s<   |t kst|tƒs||i}|d ur*||i}t| j|ƒ| _d S r   )r   Ú
isinstanceÚdictÚmerge_errorsr   )r   ÚmessagesÚ
field_nameÚindexr   r   r   Ústore_error   s
    zErrorStore.store_error)Ú__name__Ú
__module__Ú__qualname__r	   r   r   r   r   r   r   r      s   r   c              	   C   sN  | s|S |s| S t | tƒrbt |tƒr,| | S t |tƒrVt|fi tt| | t¡ƒi¤ŽS g | ¢|‘S t | tƒrt |tƒr˜t| fi tt|  t¡|ƒi¤ŽS t |tƒrät| ƒ}| ¡ D ],\}}||v rÖt|| |ƒ||< q²|||< q²|S t| fi tt|  t¡|ƒi¤ŽS t |tƒr| g|¢S t |tƒrFt|fi tt| | t¡ƒi¤ŽS | |gS )z¬Deeply merge two error messages.

    The format of ``errors1`` and ``errors2`` matches the ``message``
    parameter of :exc:`marshmallow.exceptions.ValidationError`.
    )r
   Úlistr   r   r   ÚgetÚitems)Zerrors1Zerrors2r   ÚkeyÚvalr   r   r   r      s4    


 
 

 
 r   N)Ú__doc__Zmarshmallow.exceptionsr   r   r   r   r   r   r   Ú<module>   s   