
    h                          S SK JrJr  S SKrSSKJrJr  SSKJrJ	r	J
r
  SSKJrJrJrJrJrJrJrJr  SSKJrJrJr   SS	/r " S
 S	\5      r " S S\5      r g)    )absolute_importprint_functionN   )MarkedYAMLErrorReusedAnchorWarning)utf8nprintnprintf)StreamStartEventStreamEndEventMappingStartEventMappingEndEventSequenceStartEventSequenceEndEvent
AliasEventScalarEvent)MappingNode
ScalarNodeSequenceNodeComposerComposerErrorc                       \ rS rSrSrg)r       N)__name__
__module____qualname____firstlineno____static_attributes__r       T/home/james-whalen/.local/lib/python3.13/site-packages/srsly/ruamel_yaml/composer.pyr   r      s    r    c                   t    \ rS rSrSS jr\S 5       r\S 5       rS rS r	S r
S	 rS
 rS rS rS rS rSrg)r       Nc                     Xl         U R                   b(  [        U R                   SS 5      c  X R                   l        0 U l        g )N	_composer)loadergetattrr%   anchors)selfr&   s     r!   __init__Composer.__init__!   s4    ;;"wt{{K'N'V$(KK!r    c                     [        U R                  S5      (       a  U R                  R                    U R                  R                  $ Ntyp)hasattrr&   parser_parserr)   s    r!   r0   Composer.parser(   s2     4;;&&KK{{"""r    c                     [        U R                  S5      (       a  U R                  R                    U R                  R                  $ r-   )r/   r&   resolver	_resolverr2   s    r!   r5   Composer.resolver/   s2     4;;&&KK  {{$$$r    c                     U R                   R                  [        5      (       a  U R                   R                  5         U R                   R                  [        5      (       + $ N)r0   check_eventr   	get_eventr   r2   s    r!   
check_nodeComposer.check_node7   sD     ;;""#344KK!!# ;;**>:::r    c                 l    U R                   R                  [        5      (       d  U R                  5       $ g r9   )r0   r:   r   compose_documentr2   s    r!   get_nodeComposer.get_node@   s-     {{&&~66((** 7r    c                    U R                   R                  5         S nU R                   R                  [        5      (       d  U R	                  5       nU R                   R                  [        5      (       d<  U R                   R                  5       n[        SUR                  SUR                  5      eU R                   R                  5         U$ )Nz(expected a single document in the streamzbut found another document)r0   r;   r:   r   r?   r   
start_mark)r)   documentevents      r!   get_single_nodeComposer.get_single_nodeF   s     	 {{&&~66,,.H {{&&~66KK))+E:##,  	  	r    c                     U R                   R                  5         U R                  S S 5      nU R                   R                  5         0 U l        U$ r9   )r0   r;   compose_noder(   )r)   nodes     r!   r?   Composer.compose_document_   sF     	   t, 	r    c                    U R                   R                  [        5      (       ah  U R                   R                  5       nUR                  nX@R
                  ;  a$  [        S S S[        U5      -  UR                  5      eU R
                  U   $ U R                   R                  5       nUR                  nUb]  XPR
                  ;   aN  SR                  XPR
                  U   R                  UR                  5      n[        R                  " U[        5        U R                  R                  X5        U R                   R                  [         5      (       a  U R#                  U5      nOkU R                   R                  [$        5      (       a  U R'                  U5      nO5U R                   R                  [(        5      (       a  U R+                  U5      nU R                  R-                  5         W$ )Nzfound undefined alias %rzE
found duplicate anchor {!r}
first occurrence {}
second occurrence {})r0   r:   r   r;   anchorr(   r   r   rC   
peek_eventformatwarningswarnr   r5   descend_resolverr   compose_scalar_noder   compose_sequence_noder   compose_mapping_nodeascend_resolver)r)   parentindexrE   aliasrM   wsrJ   s           r!   rI   Composer.compose_nodem   sw   ;;"":..KK))+ELLELL(#.e<$$	  <<&&&&(%,,v"6"A"A5CSCS  b"56&&v5;;"";//++F3D[[$$%788--f5D[[$$%677,,V4D%%'r    c           
      r   U R                   R                  5       nUR                  nUb  US:X  a5  U R                  R	                  [
        UR                  UR                  5      n[        UUR                  UR                  UR                  UR                  UR                  US9nUb  X@R                  U'   U$ )N!)stylecommentrM   )r0   r;   tagr5   resolver   valueimplicitrC   end_markr^   r_   r(   )r)   rM   rE   r`   rJ   s        r!   rS   Composer.compose_scalar_node   s    %%'ii;#+--''
EKKPCKKNN++MM
 #'LL r    c           
      `   U R                   R                  5       nUR                  nUb  US:X  a+  U R                  R	                  [
        S UR                  5      n[        U/ UR                  S UR                  UR                  US9nUb  X@R                  U'   SnU R                   R                  [        5      (       dU  UR                  R                  U R                  XE5      5        US-  nU R                   R                  [        5      (       d  MU  U R                   R                  5       nUR                  SL aO  UR                  bB  UR                  b$  [!        SR#                  UR                  5      5        UR                  Ul	        UR$                  Ul        U R'                  Xd5        U$ )Nr]   
flow_styler_   rM   r   r   Tz:Warning: unexpected end_event commment in sequence node {})r0   r;   r`   r5   ra   r   rc   rC   rh   r_   r(   r:   r   rb   appendrI   r	   rO   rd   check_end_doc_comment)r)   rM   start_eventr`   rJ   rX   	end_events          r!   rT   Composer.compose_sequence_node   sc   kk++-oo;#+--''dK<P<PQC"""--''
 #'LL ++))*:;;JJd//<=QJE ++))*:;; KK))+	??d"y'8'8'D||'$fT__5 %,,DL!**""93r    c           
         U R                   R                  5       nUR                  nUb  US:X  a+  U R                  R	                  [
        S UR                  5      n[        U/ UR                  S UR                  UR                  US9nUb  X@R                  U'   U R                   R                  [        5      (       de  U R                  US 5      nU R                  XE5      nUR                  R                  XV45        U R                   R                  [        5      (       d  Me  U R                   R                  5       nUR                  SL a  UR                  b  UR                  Ul	        UR                   Ul        U R#                  Xt5        U$ )Nr]   rg   T)r0   r;   r`   r5   ra   r   rc   rC   rh   r_   r(   r:   r   rI   rb   ri   rd   rj   )r)   rM   rk   r`   rJ   item_key
item_valuerl   s           r!   rU   Composer.compose_mapping_node   sH   kk++-oo;#+--''T;;O;OPC"""--''
 #'LL ++))/::((t4H
 **4:JJJx45 ++))/:: KK))+	??d"y'8'8'D$,,DL!**""93r    c                    UR                   (       az  UR                   S   (       ae  UR                   c	  S S /Ul         [        U[        5      (       a   eUR                   R                  UR                   S   5        S UR                   S'   g g g )Nr   )r_   
isinstancer   ri   )r)   rl   rJ   s      r!   rj   Composer.check_end_doc_comment   sw    !2!21!5||# $d|!$4444 LL	 1 1! 45#'Ia  "6r    )r(   r&   r9   )r   r   r   r   r*   propertyr0   r5   r<   r@   rF   r?   rI   rS   rT   rU   rj   r   r   r    r!   r   r       s_     # # % %;+2$L&B D
(r    )!
__future__r   r   rP   errorr   r   compatr   r	   r
   eventsr   r   r   r   r   r   r   r   nodesr   r   r   typingAnyDictOptionalList__all__r   objectr   r   r    r!   <module>r      sV    7  7 ) )	 	 	 9 8 
'	O 	S(v S(r    