
    Pif	              	          d Z ddlmZ ddlZddlZddlZddlmZ ddZd Z	d Z
eZd	 Z ej        d
          Zd Zd ZdddddddddZddZ ej        d          Zd dZdS )!zn
Utility functions and objects to ease Python 2/3 compatibility,
and different versions of support libraries.
    )annotationsN)Matchutf-8c                Z    t          | t                    r|                     |          S | S )N)
isinstancestrencode)sencs     a/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/rdflib/compat.py
cast_bytesr      s)    !S xx}}H    c                <     t          j        d          |           S )Nascii)codecs	getreader)streams    r   r   r      s    $6G$$V,,,r   c                     t          | ddi|S )Nmoderb)open)argskwargss     r   bopenr      s    +D+F+++r   c                &    | dk     rdS | dk    rdS dS )Nr       )ns    r   signr        s#    1uur1uuq1r   z%(\\u[0-9A-Fa-f]{4}|\\U[0-9A-Fa-f]{8})c                :    t                               d |           S )Nc                r    t          t          |                     d          dd          d                    S )Nr         )chrintgroup)ms    r   <lambda>z _unicodeExpand.<locals>.<lambda>,   s*    SABB-D-D)E)E r   )r_unicodeEscapesubr
   s    r   _unicodeExpandr-   +   s    EEqIIIr   c                   t          j        t          d                     	 |                     dd          } |                     dd          } |                     dd          } |                     dd	          } |                     d
d          } |                     dd          } |                     dd          } |                     dd          } | S )Nzrdflib.compat.decodeStringEscape() is deprecated, it will be removed in rdflib 7.0.0. This function is not used anywhere in rdflib anymore and the utility that it does provide is not implemented correctly.z\t	z\n
z\rz\bz\fz\""z\''z\\\)warningswarnDeprecationWarningreplacer,   s    r   decodeStringEscaper;   /   s    MQ	
 	
   	
		%A			%A			%A			%A			%A			%A			%A			&$AHr   r/   r2   r0   r1   r3   r4   r5   r6   )tbr   rfr4   r5   r6   match
Match[str]returnr   c                    |                                  \  }}|t          |         S t          t          |dd          d                    S )Nr   r$   )groups_string_escape_mapr%   r&   )r@   smatchumatchs      r   _turtle_escape_subberrH   U   sD    \\^^NFF!&))3vabbz2&&'''r   z5\\(?:([tbnrf"'\\])|(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}))escapedc                N    d| vr| S t                               t          |           S )Nr6   )_turtle_escape_patternr+   rH   )rI   s    r   decodeUnicodeEscaperL   b   s)    7!%%&;WEEEr   )r   )r@   rA   rB   r   )rI   r   rB   r   )__doc__
__future__r   r   rer7   typingr   r   r   r   r&   	long_typer    compiler*   r-   r;   rE   rH   rK   rL   r   r   r   <module>rS      sE   
 # " " " " "  				          - - -, , ,
 	   "*EFFJ J J  6 
						
	 	 ( ( ( ( $@  
F F F F F Fr   