
    -i                     n    d Z ddlmZ ddlZ G d dej                  Zd Zedk    r e             dS dS )	zCache Module for analex   cache    Nc                   D    e Zd ZdZddZd Zd Zd Zd Zd Z	d	 Z
d
 ZdS )Cachez/
    cache for word morphological analysis
    Fc                    i i i i dd| _         |sd}|| _        	 t          | j        d          | _        t	          j        | j                  | _         | j        j         dS #  t          t          d| j                   Y dS xY w)z%
        Create Analex Cache
        )nounverbstopword)checkedWords	FreqWordszqalsadi_cache.picklerbCan't Open file to pickleN)	r   dp_pathopendbpickleloadcloseprint__file__)selfr   s     _/var/www/html/speakWrite/venv/lib/python3.11/site-packages/qalsadi/cachemanager/cache_pickle.py__init__zCache.__init__   s    
 "$bbAA
 


  	-,G	4<..DG
  TW--DJGMMMM	G(7FFFFFFs   A! !Bc                     	 t          | j        d          | _        t          j        | j        | j                   | j        j         d| _        dS #  t          t          d| j                   Y dS xY w)z2
        Delete instance and clear cache

        wbNr   )	r   r   r   r   dumpr   r   r   r   )r   s    r   __del__zCache.__del__-   sn    	4<..DG
 K
DG,,,GMMDJJJ	G(7FFFFFFs   A A0c                      || j         d         v S )z$return if ``word`` is already cachedr   r   r   words     r   is_already_checkedzCache.is_already_checked=   s    tz.111    c                 D    | j         d                             |i           S )z"return checked ``word`` form cacher   r   getr    s     r   get_checkedzCache.get_checkedA   s!     z.)--dB777r#   c                 H    || j         d         vr|| j         d         |<   dS dS )zadd checked ``word`` form cacher   Nr   )r   r!   datas      r   add_checkedzCache.add_checkedF   s3    tz.111/3DJ~&t,,, 21r#   c                      || j         d         v S )z#return if word exists in freq cacher   r   )r   r!   wordtypes      r   exists_cache_freqzCache.exists_cache_freqK   s    tz+...r#   c                 P    | j         d         |                             |d          S )z%return  ``word`` frequency form cacher   r   r%   )r   originalwordr,   s      r   get_freqzCache.get_freqO   s$    z+&x044\1EEEr#   c                 2    || j         d         |         |<   dS )z.add   ``original`` frequency ``freq`` to cacher   Nr   )r   originalr,   freqs       r   add_freqzCache.add_freqS   s    6:
;)(333r#   N)F)__name__
__module____qualname____doc__r   r   r"   r'   r*   r-   r0   r4    r#   r   r   r      s            *   2 2 28 8 8
4 4 4
/ / /F F F; ; ; ; ;r#   r   c                  $    t          d           dS )zmain functiontestN)r   r9   r#   r   mainlyr<   X   s    	&MMMMMr#   __main__)r8    r   r   r   r<   r5   r9   r#   r   <module>r?      s            B; B; B; B; B;EK B; B; B;J  
 z
FHHHHH r#   