
    BThu                     r   d dl mZmZ d dlmZmZmZmZmZ ddl	m
Z
mZ erddlmZ  ed       G d d	             Z ed       G d
 de             Z ed       G d de             Ze G d d             Ze G d de             Ze G d de             Ze G d d             Ze G d d             Zy)    )	dataclassfield)TYPE_CHECKINGDictIteratorListOptional   )SNAPSHOT_EMPTY_FOSSIL_KEYSNAPSHOT_UNKNOWN_FOSSIL_KEY)SerializedDataT)frozenc                   N    e Zd ZU eed<   dZed   ed<    ed      Zee	   ed<   y)SnapshotnameNr   datadefaulttainted)
__name__
__module____qualname__str__annotations__r   r	   r   r   bool     ]/var/www/catia.catastroantioquia-mas.com/valormas/lib/python3.12/site-packages/syrupy/data.pyr   r      s*    
I'+D(#
$+#D1GXd^1r   r   c                       e Zd ZU eZeed<   y)SnapshotEmptyr   N)r   r   r   r   r   r   r   r   r   r   r    r       s    )D#)r   r    c                       e Zd ZU eZeed<   y)SnapshotUnknownr   N)r   r   r   r   r   r   r   r   r   r   r"   r"   #   s    +D#+r   r"   c                       e Zd ZU dZeed<    ee      Ze	edf   ed<    ed      Z
ee   ed<   ed	efd
       Zded	ed   fdZddZddZded	dfdZd	efdZd	ed   fdZy)SnapshotCollectionz,A collection of snapshots at a save locationlocationdefault_factoryr   
_snapshotsNr   r   returnc                 ,    t        | j                        S N)r   r(   selfs    r   has_snapshotsz SnapshotCollection.has_snapshots2   s    DOO$$r   snapshot_namec                 8    | j                   j                  |      S r+   )r(   getr-   r/   s     r   r1   zSnapshotCollection.get6   s    ""=11r   c                     || j                   |j                  <   |j                  t        k7  r| j                  t               y y r+   )r(   r   r   remove)r-   snapshots     r   addzSnapshotCollection.add9   s3    )1&==55KK12 6r   c                 4    |D ]  }| j                  |        y r+   )r6   )r-   snapshot_collectionr5   s      r   mergezSnapshotCollection.merge>   s    + 	HHHX	r   c                 <    | j                   j                  |d        y r+   )r(   popr2   s     r   r4   zSnapshotCollection.removeB   s    M40r   c                 ,    t        | j                        S r+   )lenr(   r,   s    r   __len__zSnapshotCollection.__len__E   s    4??##r   c                 H    t        | j                  j                               S r+   )iterr(   valuesr,   s    r   __iter__zSnapshotCollection.__iter__H   s    DOO**,--r   )r5   r   r)   Nr8   r$   r)   N)r   r   r   __doc__r   r   r   dictr(   r   r   r	   r   propertyr.   r1   r6   r9   r4   intr>   r   rB   r   r   r   r$   r$   (   s    6M(-d(CJS*_%C $D1GXd^1%t % %2 2*)= 23
1C 1D 1$ $.(:. .r   r$   c                   P    e Zd ZU dZ ed       Zeedf   ed<   e	de
fd       Zy)	SnapshotEmptyCollectionzLThis is a saved collection that is known to be empty and thus can be removedc                  >    t               j                  t               iS r+   )r    r   r   r   r   <lambda>z SnapshotEmptyCollection.<lambda>Q   s    !5!5} G r   r&   r   r(   r)   c                      y)NFr   r,   s    r   r.   z%SnapshotEmptyCollection.has_snapshotsT   s    r   N)r   r   r   rD   r   r(   r   r   r   rF   r   r.   r   r   r   rI   rI   L   s=    V(-G)JS*_%  t  r   rI   c                   :    e Zd ZU dZ ed       Zeedf   ed<   y)SnapshotUnknownCollectionzNThis is a saved collection that is unclaimed by any extension currently in usec                  >    t               j                  t               iS r+   )r"   r   r   r   r   rK   z"SnapshotUnknownCollection.<lambda>^   s    !2!7!79J K r   r&   r   r(   N)	r   r   r   rD   r   r(   r   r   r   r   r   r   rN   rN   Y   s"    X(-K)JS*_% r   rN   c                       e Zd ZU  ee      Zeedf   ed<   dede	d   fdZ
ddZdd	Zdd
Zded   fdZdedefdZy)SnapshotCollectionsr&   r$   _snapshot_collectionsr%   r)   c                 8    | j                   j                  |      S r+   )rR   r1   )r-   r%   s     r   r1   zSnapshotCollections.getf   s    ))--h77r   Nc                 6    || j                   |j                  <   y r+   )rR   r%   )r-   r8   s     r   r6   zSnapshotCollections.addi   s    CV""#6#?#?@r   c                     | j                  |j                        }|'t        |j                        }| j                  |       |j	                  |       y )N)r%   )r1   r%   r$   r6   r9   )r-   r8   snapshot_collection_to_updates      r   updatezSnapshotCollections.updatel   sP    (,1D1M1M(N%(0,>,55-) HH23%++,?@r   c                 4    |D ]  }| j                  |        y r+   )rW   )r-   snapshot_collectionsr8   s      r   r9   zSnapshotCollections.mergeu   s    #7 	-KK+,	-r   c                 H    t        | j                  j                               S r+   )r@   rR   rA   r,   s    r   rB   zSnapshotCollections.__iter__y   s    D..55788r   keyc                     || j                   v S r+   )rR   )r-   r[   s     r   __contains__z SnapshotCollections.__contains__|   s    d0000r   rC   )rY   rQ   r)   N)r   r   r   r   rE   rR   r   r   r   r	   r1   r6   rW   r9   r   rB   r   r]   r   r   r   rQ   rQ   b   sm    =BSW=X4%9 9:X8C 8H-A$B 8WA-9(#78 91 1 1r   rQ   c                       e Zd ZU dZee   ed<   dZee   ed<    ee	      Z
ee   ed<   dZeed<   dZeed<   ed	efd
       Zed	efd       Zed	efd       Zed	efd       Zy)
DiffedLineNabr&   c diff_adiff_br)   c                     | j                   d uS r+   )r`   r,   s    r   has_snapshotzDiffedLine.has_snapshot       vvT!!r   c                     | j                   d uS r+   )ra   r,   s    r   has_receivedzDiffedLine.has_received   rh   r   c                 6    | j                   xr | j                  S r+   )rg   rj   r,   s    r   is_completezDiffedLine.is_complete   s      6T%6%66r   c                 ,    t        | j                        S r+   )r   rb   r,   s    r   
is_contextzDiffedLine.is_context   s    DFF|r   )r   r   r   r`   r	   r   r   ra   r   listrb   r   rd   re   rF   r   rg   rj   rl   rn   r   r   r   r_   r_      s    Ax}Ax}.AtCy.FCFC"d " " "d " " 7T 7 7 D  r   r_   N)dataclassesr   r   typingr   r   r   r   r	   	constantsr   r   typesr   r   r    r"   r$   rI   rN   rQ   r_   r   r   r   <module>rt      s   
 % $2 2 2 $*H * * $,h , ,  .  .  .F 	0 	 	  2   1 1 1:   r   