
    ]j!                    6    d dl mZ d dlZd dlZ G d de      Zy)    )annotationsNc                  0     e Zd Zd fdZddZddZ xZS )Cachec           	        t         j                  j                  |dj                  t	        |      j                  t         j                  d      |            | _        t         j                  j                  t         j                  j                  | j                              s<t        j                  t         j                  j                  | j                               t        | 1          y )Nz{}_{}.pickle_)ospathjoinformatstrreplacesepfilenameexistsdirnamemakedirssuper__init__)selfdjango_folderdatabase
cache_path	__class__s       G/root/env/lib/python3.12/site-packages/django_migration_linter/cache.pyr   zCache.__init__   s    !!#m"4"<"<RVVS"I8T

 ww~~bggoodmm<=KK67    c                    	 t        | j                  d      5 }t        j                  |      }| j	                  |       d d d        y # 1 sw Y   y xY w# t
        $ r Y y w xY w)Nrb)openr   pickleloadupdateOSError)r   ftmp_dicts      r   r    z
Cache.load   sX    	dmmT* &a!;;q>H%& & &  		s-   A 'AA AA A 	A A c                    t        | j                  d      5 }t        j                  | |d       d d d        y # 1 sw Y   y xY w)Nwb   )protocol)r   r   r   dump)r   r#   s     r   savez
Cache.save   s7    $--& 	-!KKa!,	- 	- 	-s	   9A)r   z
str | Noner   r   r   r   )returnNone)__name__
__module____qualname__r   r    r*   __classcell__)r   s   @r   r   r      s    	-r   r   )
__future__r   r   r   dictr    r   r   <module>r4      s    " 	 -D -r   