U mÃfEã@sFddgZddlmZddlTddlTGdd„deƒZGdd„dƒZdS)Ú SerializerÚSerializerErroré)Ú YAMLError)Ú*c@s eZdZdS)rN)Ú__name__Ú __module__Ú __qualname__©r r ú?/opt/hc_python/lib64/python3.8/site-packages/yaml/serializer.pyrsc@sJeZdZdZddd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dS)rzid%03dNcCs:||_||_||_||_||_i|_i|_d|_d|_dS)Né) Ú use_encodingÚuse_explicit_startÚuse_explicit_endÚ use_versionÚuse_tagsÚserialized_nodesÚanchorsÚlast_anchor_idÚclosed)ÚselfÚencodingZexplicit_startZ explicit_endÚversionÚtagsr r r Ú__init__szSerializer.__init__cCs@|jdkr$| t|jd¡d|_n|jr4tdƒ‚ntdƒ‚dS)N)rFúserializer is closedzserializer is already opened)rÚemitZStreamStartEventr r©rr r r Úopens   zSerializer.opencCs0|jdkrtdƒ‚n|js,| tƒ¡d|_dS)Núserializer is not openedT)rrrZStreamEndEventrr r r Úclose$s    zSerializer.closecCs||jdkrtdƒ‚n|jr"tdƒ‚| t|j|j|jd¡| |¡| |dd¡| t |j d¡i|_ i|_ d|_ dS)Nrr)Úexplicitrr)r r )rrrZDocumentStartEventr rrÚ anchor_nodeÚserialize_nodeZDocumentEndEventrrrr©rÚnoder r r Ú serialize.s   ÿ zSerializer.serializecCsˆ||jkr*|j|dkr„| |¡|j|<nZd|j|<t|tƒrV|jD]}| |¡qDn.t|tƒr„|jD]\}}| |¡| |¡qfdS)N)rÚgenerate_anchorÚ isinstanceÚ SequenceNodeÚvaluer!Ú MappingNode)rr$ÚitemÚkeyr)r r r r!<s      zSerializer.anchor_nodecCs|jd7_|j|jS)Nr)rÚANCHOR_TEMPLATEr#r r r r&JszSerializer.generate_anchorc CsŒ|j|}||jkr&| t|ƒ¡nbd|j|<| ||¡t|tƒrš| t|jd¡}| t|jd¡}|j |k|j |kf}| t ||j ||j|j d¡næt|t ƒr |j | t |jd¡k}| t ||j ||jd¡d}|jD]}| |||¡|d7}qà| tƒ¡nvt|tƒr€|j | t|jd¡k}| t||j ||jd¡|jD]&\} } | | |d¡| | || ¡qL| tƒ¡| ¡dS)NT)TF)FT)Ústyle)Ú flow_styler r)rrrZ AliasEventZdescend_resolverr'Z ScalarNodeÚresolver)ÚtagZ ScalarEventr.r(ZSequenceStartEventr/r"ZSequenceEndEventr*ZMappingStartEventZMappingEndEventZascend_resolver) rr$ÚparentÚindexÚaliasZ detected_tagÚ default_tagZimplicitr+r,r)r r r r"NsH     ÿ  ÿÿ   ÿÿ zSerializer.serialize_node)NNNNN) rrrr-rrrr%r!r&r"r r r r r sÿ   N)Ú__all__ÚerrorrÚeventsZnodesrrr r r r Ús