
    i                          d dl mZmZ d dlZddlmZmZ ddlmZm	Z	m
Z
 ddlmZmZmZmZmZmZmZmZ ddlmZmZmZ 	 dd	gZ G d
 d	e      Z G d de      Z y)    )absolute_importprint_functionN   )MarkedYAMLErrorReusedAnchorWarning)utf8nprintnprintf)StreamStartEventStreamEndEventMappingStartEventMappingEndEventSequenceStartEventSequenceEndEvent
AliasEventScalarEvent)MappingNode
ScalarNodeSequenceNodeComposerComposerErrorc                       e Zd Zy)r   N)__name__
__module____qualname__     k/var/www/vps2.regionflexible.com/Desarrollo/venv/lib/python3.12/site-packages/srsly/ruamel_yaml/composer.pyr   r      s    r   c                   j    e Zd ZddZed        Zed        Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zd Zy)r   Nc                     || _         | j                   (t        | j                   dd       | | j                   _        i | _        y )N	_composer)loadergetattrr!   anchors)selfr"   s     r   __init__zComposer.__init__!   s8    ;;"wt{{K'N'V$(DKK!r   c                     t        | j                  d      r| j                  j                   | j                  j                  S Ntyp)hasattrr"   parser_parserr%   s    r   r+   zComposer.parser(   s/     4;;&KK{{"""r   c                     t        | j                  d      r| j                  j                   | j                  j                  S r(   )r*   r"   resolver	_resolverr-   s    r   r/   zComposer.resolver/   s/     4;;&KK  {{$$$r   c                     | j                   j                  t              r| j                   j                          | j                   j                  t               S N)r+   check_eventr   	get_eventr   r-   s    r   
check_nodezComposer.check_node7   sA     ;;""#34KK!!# ;;**>:::r   c                 b    | j                   j                  t              s| j                         S y r2   )r+   r3   r   compose_documentr-   s    r   get_nodezComposer.get_node@   s*     {{&&~6((** 7r   c                    | j                   j                          d }| j                   j                  t              s| j	                         }| j                   j                  t              s<| j                   j                         }t        d|j                  d|j                        | j                   j                          |S )Nz(expected a single document in the streamzbut found another document)r+   r4   r3   r   r7   r   
start_mark)r%   documentevents      r   get_single_nodezComposer.get_single_nodeF   s     	 {{&&~6,,.H {{&&~6KK))+E:##,  	  	r   c                     | j                   j                          | j                  d d       }| j                   j                          i | _        |S r2   )r+   r4   compose_noder$   )r%   nodes     r   r7   zComposer.compose_document_   sF     	   t, 	r   c                    | j                   j                  t              rg| j                   j                         }|j                  }|| j
                  vr$t        d d dt        |      z  |j                        | j
                  |   S | j                   j                         }|j                  }|\|| j
                  v rNdj                  || j
                  |   j                  |j                        }t        j                  |t               | j                  j                  ||       | j                   j                  t               r| j#                  |      }na| j                   j                  t$              r| j'                  |      }n0| j                   j                  t(              r| j+                  |      }| j                  j-                          S )Nzfound undefined alias %rzE
found duplicate anchor {!r}
first occurrence {}
second occurrence {})r+   r3   r   r4   anchorr$   r   r   r:   
peek_eventformatwarningswarnr   r/   descend_resolverr   compose_scalar_noder   compose_sequence_noder   compose_mapping_nodeascend_resolver)r%   parentindexr<   aliasrB   wsr@   s           r   r?   zComposer.compose_nodem   ss   ;;"":.KK))+ELLEDLL(#.e<$$	  <<&&&&(%$,,v"6"A"A5CSCS  b"56&&vu5;;"";/++F3D[[$$%78--f5D[[$$%67,,V4D%%'r   c           	      t   | j                   j                         }|j                  }||dk(  r5| j                  j	                  t
        |j                  |j                        }t        ||j                  |j                  |j                  |j                  |j                  |      }||| j                  |<   |S )N!)stylecommentrB   )r+   r4   tagr/   resolver   valueimplicitr:   end_markrR   rS   r$   )r%   rB   r<   rT   r@   s        r   rH   zComposer.compose_scalar_node   s    %%'ii;#+--''
EKKPCKKNN++MM
 #'DLL r   c           	      J   | j                   j                         }|j                  }||dk(  r+| j                  j	                  t
        d |j                        }t        |g |j                  d |j                  |j                  |      }||| j                  |<   d}| j                   j                  t              sP|j                  j                  | j                  ||             |dz  }| j                   j                  t              sP| j                   j                         }|j                  du rM|j                  A|j                  $t!        dj#                  |j                               |j                  |_	        |j$                  |_        | j'                  ||       |S )NrQ   
flow_stylerS   rB   r   r   Tz:Warning: unexpected end_event commment in sequence node {})r+   r4   rT   r/   rU   r   rW   r:   r[   rS   r$   r3   r   rV   appendr?   r	   rD   rX   check_end_doc_comment)r%   rB   start_eventrT   r@   rM   	end_events          r   rI   zComposer.compose_sequence_node   sc   kk++-oo;#+--''dK<P<PQC"""--''
 #'DLL ++))*:;JJd//e<=QJE ++))*:; KK))+	??d"y'8'8'D||'$fT__5 %,,DL!**""9d3r   c           	         | j                   j                         }|j                  }||dk(  r+| j                  j	                  t
        d |j                        }t        |g |j                  d |j                  |j                  |      }||| j                  |<   | j                   j                  t              sa| j                  |d       }| j                  ||      }|j                  j                  ||f       | j                   j                  t              sa| j                   j                         }|j                  du r|j                  |j                  |_	        |j                   |_        | j#                  ||       |S )NrQ   rZ   T)r+   r4   rT   r/   rU   r   rW   r:   r[   rS   r$   r3   r   r?   rV   r\   rX   r]   )r%   rB   r^   rT   r@   item_key
item_valuer_   s           r   rJ   zComposer.compose_mapping_node   sJ   kk++-oo;#+--''T;;O;OPC"""--''
 #'DLL ++))/:((t4H
 **4:JJJx45 ++))/: KK))+	??d"y'8'8'D$,,DL!**""9d3r   c                     |j                   ro|j                   d   r_|j                   	d d g|_         t        |t              rJ |j                   j                  |j                   d          d |j                   d<   y y y )Nr   )rS   
isinstancer   r\   )r%   r_   r@   s      r   r]   zComposer.check_end_doc_comment   st    !2!21!5||# $d|!$444 LL	 1 1! 45#'Ia  "6r   r2   )r   r   r   r&   propertyr+   r/   r5   r8   r=   r7   r?   rH   rI   rJ   r]   r   r   r   r   r       s_     # # % %;+2$L&B D
(r   )!
__future__r   r   rE   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>rr      sV    7  7 ) )	 	 	 9 8 
'	O 	S(v S(r   