
    w;3hi                         d Z ddlZddlZddlZddlZddlZddlZ ej                  e      Z	 ej                  d      Z ej                  d      ZdZdZdZdZ G d d      Zd	 Z G d
 de      Zy))AutoCastableAutoCloseableDEBUG_AUTOCLOSELIBRARY_AVAILABLE    NF      c                       e Zd Zed        Zy)r   c                     | j                   S N)rawselfs    X/var/www/html/audio-gradio/venv/lib/python3.12/site-packages/pypdfium2/internal/bases.py_as_parameter_zAutoCastable._as_parameter_   s    xx    N)__name__
__module____qualname__propertyr    r   r   r   r      s     r   r   c                    t         rht        dt        dt        di|j                     }t        j                  t        j                  j                         d| d| dj                                t        sAt        j                  t        j                  j                         dj                                y ||j                         rJ  | |g|i | y )Nautoexplicitz	by parentzClose (z) 
zL-> Cannot close object, library is destroyed. This may cause a memory leak!
)r   
STATE_AUTOSTATE_EXPLICITSTATE_BYPARENTvalueoswritesysstderrfilenoencoder   _tree_closed)
close_funcr   obj_reprstateparentargskwargsdescs           r   _close_templater.       s    FNJP[\]b]h]hi
""$vRz&D&K&K&MN
""$(u&}&}&  	AN6#6#6#888s$T$V$r   c                   @    e Zd ZddddZd Zd Zd Zd Zd	 Zdd
Z	y)r   NT)obj
needs_freec                   t        | d      rJ || _        || n|| _        t        j                         | _        || _        || _        t        j                  t              | _        d | _        g | _        |r| j                          y y )N
_finalizer)hasattr_close_func_objuuiduuid4_uuid_ex_args
_ex_kwargsctypesc_int8r   _autoclose_stater3   _kids_attach_finalizer)r   r'   r0   r1   r+   r,   s         r   __init__zAutoCloseable.__init__1   sw     4...%KDS	ZZ\
  &j 9
""$ r   c                 f    dt        |       j                   dt        | j                        d d  dS )N<z uuid:   >)typer   strr9   r   s    r   __repr__zAutoCloseable.__repr__C   s2    4:&&'vc$**obq.A-B!DDr   c           	         | j                   J t        j                  | j                  t        | j
                  | j                  t        |       | j                  | j                  g| j                  i | j                  | _         y r   )r3   weakreffinalizer6   r.   r5   r   reprr>   r*   r:   r;   r   s    r   r@   zAutoCloseable._attach_finalizerG   s    &&&!**499otGWGWY]YaYacghlcmos  pE  pE  GK  GR  GR  v  UY  Ub  Ub  v  fj  fu  fu  vr   c                 F    | j                   j                          d | _         y r   )r3   detachr   s    r   _detach_finalizerzAutoCloseable._detach_finalizerL   s     r   c                 l    | j                   y| j                  | j                  j                         ryy)NTF)r   r*   r&   r   s    r   r&   zAutoCloseable._tree_closedP   s.    88KK#)A)A)Cr   c                 `    | j                   j                  t        j                  |             y r   )r?   appendrJ   ref)r   ks     r   _add_kidzAutoCloseable._add_kidW   s    

7;;q>+r   c                 ~   | j                   r| j                  sy| j                  D ]+  } |       }|s|j                   s|j                  d       - |rt        nt
        | j                  _        | j                          t        | j                  _        d | _         d | _        | j                  j                          y)NFT)
_by_parent)
r   r3   r?   closer   r   r>   r   STATE_INVALIDclear)r   rW   k_refrT   s       r   rX   zAutoCloseable.close[   s    xxtZZ 	)EAQUU4(	)
 9Cn#&3#

r   )F)
r   r   r   rA   rH   r@   rO   r&   rU   rX   r   r   r   r   r   /   s,    .2t %$Ev
,r   r   )__all__r    r"   r<   rJ   loggingr7   	getLoggerr   loggerc_boolr   r   rY   r   r   r   r   r.   r   r   r   r   <module>ra      s    T 	 
    			8	$  &--&!FMM%( 
 %=\ =r   