U b`@sFddgZddlmZddlTddlTGdddeZGdddZdS)Composer ComposerError)MarkedYAMLError)*c@s eZdZdS)rN)__name__ __module__ __qualname__r r @/opt/alt/python38/lib64/python3.8/site-packages/yaml/composer.pyrsc@sTeZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ dS)rcCs i|_dSN)anchorsselfr r r __init__ szComposer.__init__cCs|tr||t Sr ) check_eventZStreamStartEvent get_eventStreamEndEventr r r r check_nodes zComposer.check_nodecCs|ts|SdSr )rrcompose_documentr r r r get_nodes zComposer.get_nodecCsN|d}|ts|}|tsB|}td|jd|j||S)Nz(expected a single document in the streamzbut found another document)rrrrr start_mark)rZdocumenteventr r r get_single_nodes  zComposer.get_single_nodecCs&||dd}|i|_|Sr )r compose_noder )rnoder r r r2s  zComposer.compose_documentcCs|tr@|}|j}||jkr6tddd||j|j|S|}|j}|dk r|||jkr|td||j|jd|j||||t r| |}n*|t r| |}n|t r||}||S)Nzfound undefined alias %rz+found duplicate anchor %r; first occurrencezsecond occurrence)rZ AliasEventranchorr rrZ peek_eventZdescend_resolverZ ScalarEventcompose_scalar_nodeZSequenceStartEventcompose_sequence_nodeZMappingStartEventcompose_mapping_nodeZascend_resolver)rparentindexrrrr r r r?s<            zComposer.compose_nodecCs`|}|j}|dks|dkr0|t|j|j}t||j|j|j|jd}|dk r\||j |<|S)N!)style) rtagresolveZ ScalarNodevalueimplicitrend_markr"r )rrrr#rr r r rXs zComposer.compose_scalar_nodecCs|}|j}|dks|dkr.|td|j}t|g|jd|jd}|dk rV||j|<d}|t s|j | |||d7}qZ|}|j |_ |S)Nr! flow_styler)rr#r$Z SequenceNoder&rr)r rZSequenceEndEventr%appendrr')rr start_eventr#rr end_eventr r r rcs$   zComposer.compose_sequence_nodecCs|}|j}|dks|dkr.|td|j}t|g|jd|jd}|dk rV||j|<|t s| |d}| ||}|j ||fqV|}|j |_ |S)Nr!r()rr#r$Z MappingNoder&rr)r rZMappingEndEventrr%r+r')rrr,r#rZitem_keyZ item_valuer-r r r rus$    zComposer.compose_mapping_nodeN) rrrrrrrrrrrrr r r r r s  N)__all__errorrZeventsZnodesrrr r r r s