
    .Ph&                    ~    d dl mZ d dlZd dlmZmZmZmZ d dlm	Z	 	 ddgZ G d	 de          Z G d
 d          ZdS )    )annotationsN)	YAMLErrorFileMark
StringMarkYAMLStreamError)RegExpF)AnyDictOptionalListUnionTextTupler   ReaderReaderErrorc                      e Zd Zdd	Zdd
ZdS )r   namer	   position	characterencodingreasonreturnNonec                L    || _         || _        || _        || _        || _        d S N)r   r   r   r   r   )selfr   r   r   r   r   s         R/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/ruamel/yaml/reader.py__init__zReaderError.__init__$   s+     	"      c                    t          | j        t                    r9d| j        dt	          | j                  dd| j        d| j        d| j        d
S d| j        d	d| j        d| j        d| j        dS )
N'z' codec can't decode byte #x02xz: z
  in "z", position dzunacceptable character #x04x)
isinstancer   bytesr   ordr   r   r   r   s    r   __str__zReaderError.__str__-   s    dne,, 
	DDM D DT^ATAT\ D D;D DD D26-CD DDDNS D D$+ D DD D26-CD Dr   N)r   r	   r   r	   r   r	   r   r	   r   r	   r   r   r   r	   )__name__
__module____qualname__r   r)    r   r   r   r   #   s<                r   c            
         e Zd Zd*d+dZd,dZed-d	            Zej        d.d            Zd/d0dZd1d2dZ	d1d3dZ
d1d3dZd-dZd,dZ ed          Zdd                     ee edd                              z                       d          Zed4d"            Zed5d#            Zed5d$            Zd6d%Zd3d&Zd*d7d)ZdS )8r   Nstreamr	   loaderr   r   c                    || _         | j         "t          | j         dd           | | j         _        |                                  || _        d S )N_reader)r1   getattrr3   reset_readerr0   )r   r0   r1   s      r   r   zReader.__init__I   sK    ;"wt{It'L'L'T"&DK!r   c                    d | _         d| _        d| _        d| _        d| _        d | _        d | _        d | _        d| _        d| _	        d| _
        d S )Nr   T )r   stream_pointereofbufferpointer
raw_buffer
raw_decoder   indexlinecolumnr(   s    r   r5   zReader.reset_readerP   sT    	#(,
	r   c                L    	 | j         S # t          $ r t          d          w xY w)Nz"input stream needs to be specified)_streamAttributeErrorr   r(   s    r   r0   zReader.stream]   s>    	H< 	H 	H 	H!"FGGG	Hs   	 #valc                   |d S d | _         t          |t                    r(d| _        |                     |           |dz   | _        d S t          |t                    r$d| _        || _        |                                  d S t          |d          st          d          || _         t          | j        dd          | _        d| _        d | _        |                                  d S )	Nz<unicode string> z<byte string>readz-stream argument needs to have a read() methodr   z<file>F)rB   r%   strr   check_printabler:   r&   r<   determine_encodinghasattrr   r4   r0   r9   )r   rD   s     r   r0   zReader.streamd   s    ;Fc3 	&*DI  %%%*DKKKU## 	&'DI!DO##%%%%%3'' W%&UVVVDLVX>>DIDH"DO##%%%%%r   r   r>   intr   c                    	 | j         | j        |z            S # t          $ r0 |                     |dz              | j         | j        |z            cY S w xY w)N   )r:   r;   
IndexErrorupdate)r   r>   s     r   peekzReader.peekz   sf    	5;t|e344 	5 	5 	5KK	""";t|e34444	5s    7AArN   lengthc                    | j         |z   t          | j                  k    r|                     |           | j        | j         | j         |z            S r   )r;   lenr:   rP   )r   rR   s     r   prefixzReader.prefix   sK    <& C$4$444KK{4<$,*??@@r   c                   | j         |z   dz   t          | j                  k    r|                     |dz              |dk    r| j        | j                  }| xj         dz  c_         | xj        dz  c_        |dv s|dk    r.| j        | j                  dk    r| xj        dz  c_        d| _        n|dk    r| xj        dz  c_        |dz  }|dk    d S d S )NrN   r   u	   
  
   ﻿r;   rT   r:   rP   r>   r?   r@   r   rR   chs      r   forward_1_1zReader.forward_1_1   s    <& 1$DK(8(888KK
###kkT\*BLLALLJJ!OJJ)))d

t{4<8D@@		Q		xq aKF kkkkkkr   c                   | j         |z   dz   t          | j                  k    r|                     |dz              |dk    r| j        | j                  }| xj         dz  c_         | xj        dz  c_        |dk    s|dk    r.| j        | j                  dk    r| xj        dz  c_        d| _        n|dk    r| xj        dz  c_        |dz  }|dk    d S d S )NrN   r   rX   rW   rY   rZ   r[   s      r   forwardzReader.forward   s    <& 1$DK(8(888KK
###kkT\*BLLALLJJ!OJJTzzbDjjT[-F$-N-N		Q		xq aKF kkkkkkr   c                    | j         2t          | j        | j        | j        | j        | j        | j                  S t          | j        | j        | j        | j                  S r   )	r0   r   r   r>   r?   r@   r:   r;   r   r(   s    r   get_markzReader.get_mark   sS    ;	4:ty$+t{DL   DItz49dkJJJr   c                H   | j         sY| j        t          | j                  dk     r:|                                  | j         s| j        "t          | j                  dk     :t	          | j        t
                    r| j                            t          j                  rt          j	        | _
        d| _        nU| j                            t          j                  rt          j        | _
        d| _        nt          j        | _
        d| _        |                     d           d S )N   z	utf-16-lez	utf-16-bezutf-8rN   )r9   r<   rT   
update_rawr%   r&   
startswithcodecsBOM_UTF16_LEutf_16_le_decoder=   r   BOM_UTF16_BEutf_16_be_decodeutf_8_decoderP   r(   s    r   rJ   zReader.determine_encoding   s    ( 	 73t;O;ORS;S;SOO ( 	 73t;O;ORS;S;Sdou-- 		())&*=>> ("("9 +++F,?@@ ("("9 +"("5 'Ar   u!   [^	
 -~ -퟿-�𐀀-􏿿]z	
r7          asciiclsdatar&   Optional[Tuple[int, Text]]c                    |                     d          }|                    d | j                  }|sd S |d d         }|                    |          |                    d          fS )Nrn   rN   )encode	translate_printable_asciir>   decode)ro   rp   ascii_bytesnon_printablesnon_printables        r   _get_non_printable_asciizReader._get_non_printable_ascii   sm    kk'**$..tS5IJJ 	4&rr*  //1E1Eg1N1NNNr   c                    | j                             |          }t          |          sd S |                                |                                fS r   )NON_PRINTABLEsearchboolstartgroup)ro   rp   matchs      r   _get_non_printable_regexzReader._get_non_printable_regex   sF    !((..E{{ 	4{{}}ekkmm++r   c                x    	 |                      |          S # t          $ r |                     |          cY S w xY wr   )rz   UnicodeEncodeErrorr   )ro   rp   s     r   _get_non_printablezReader._get_non_printable   sP    	6//555! 	6 	6 	6//55555	6s    99c                    |                      |          }|Q|\  }}| j        t          | j                  | j        z
  z   |z   }t          | j        |t          |          dd          d S )Nunicodez"special characters are not allowed)r   r>   rT   r:   r;   r   r   r'   )r   rp   non_printable_matchr   r   r   s         r   rI   zReader.check_printable   sy    "55d;;*2E9zS%5%5%DEMH	I4   +*r   c                x   | j         d S | j        | j        d          | _        d| _        t          | j                  |k     rw| j        s|                                  | j        	 |                     | j         d| j                  \  }}n# t          $ r}| j         |j                 }| j	        %| j
        t          | j                   z
  |j        z   }n3| j	        %| j
        t          | j                   z
  |j        z   }n|j        }t          | j        |||j        |j                  d }~ww xY w| j         }t          |          }|                     |           | xj        |z  c_        | j         |d          | _         | j        r| xj        dz  c_        d | _         d S t          | j                  |k     ud S d S )Nr   strictrF   )r<   r:   r;   rT   r9   rd   r=   UnicodeDecodeErrorr   r0   r8   r   r   r   r   rI   )r   rR   rp   	convertedexcr   r   s          r   rP   zReader.update   s   ?"Fk$,..1$+''8 "!!!*
`&*oodoxQUQY&Z&ZOD))) ` ` ` $	 :I{.#'#6T_9M9M#MPSPY#Y0#'#6T_9M9M#MPSPY#Y#&9%di9clTWT^___` II	  &&&KK4KK"oijj9DOx t#"&1 $+''''''s   &$B 
D-BD((D-sizeOptional[int]c                    |d}| j                             |          }| j        || _        n| xj        |z  c_        | xj        t	          |          z  c_        |s	d| _        d S d S )Ni   T)r0   rG   r<   r8   rT   r9   )r   r   rp   s      r   rd   zReader.update_raw  sy    <D{%%?""DOOOOt#OOs4yy( 	DHHH	 	r   r   )r0   r	   r1   r	   r   r   )r   r   r*   )rD   r	   r   r   )r   )r>   rL   r   r   )rN   )rR   rL   r   r	   )rR   rL   r   r   )ro   r   rp   r&   r   rq   )rp   r   r   rq   )rp   r	   r   r   )r   r   r   r   )r+   r,   r-   r   r5   propertyr0   setterrQ   rU   r]   r_   ra   rJ   r   r|   joinmapchrrangers   ru   classmethodrz   r   r   rI   rP   rd   r.   r   r   r   r   ;   s       " " " " "    H H H XH ]& & & ]&*5 5 5 5 5A A A A A
         K K K K    F_ M 'S%%d:K:K1L1L)M)MMUUV]^^O O O [O , , , [, 6 6 6 [6      >
 
 
 
 
 
 
r   )
__future__r   rf   ruamel.yaml.errorr   r   r   r   ruamel.yaml.utilr   typingr	   r
   r   r   r   r   r   __all__r   r   r.   r   r   <module>r      s    " " " " " "*  N N N N N N N N N N N N # # # # # #O ]
#    )   0S S S S S S S S S Sr   