B b£`—cã@sNddgZddlmZddlTddlTddlTGdd„deƒZGdd„dƒZdS)ÚParserÚ ParserErroré)ÚMarkedYAMLError)Ú*c@s eZdZdS)rN)Ú__name__Ú __module__Ú __qualname__©r r ú>/opt/alt/python37/lib64/python3.7/site-packages/yaml/parser.pyrEsc@seZdZdddœZdd„Zdd„Zdd „Zd d „Zd d „Zdd„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„ZdDd!d"„Zd#d$„Zd%d&„Zd'd(„Zd)d*„Zd+d,„Zd-d.„Zd/d0„ZdEd1d2„Zd3d4„Zd5d6„Zd7d8„Zd9d:„ZdFd;d<„Zd=d>„Z d?d@„Z!dAdB„Z"dCS)Grú!ztag:yaml.org,2002:)r z!!cCs*d|_d|_i|_g|_g|_|j|_dS)N)Ú current_eventÚ yaml_versionÚ tag_handlesÚstatesÚmarksÚparse_stream_startÚstate)Úselfr r r Ú__init__Qs zParser.__init__cCsg|_d|_dS)N)rr)rr r r ÚdisposeYszParser.disposecGsN|jdkr|jr| ¡|_|jdk rJ|s,dSx|D]}t|j|ƒr2dSq2WdS)NTF)r rÚ isinstance)rÚchoicesÚchoicer r r Ú check_event^s     zParser.check_eventcCs |jdkr|jr| ¡|_|jS)N)r r)rr r r Ú peek_eventks  zParser.peek_eventcCs*|jdkr|jr| ¡|_|j}d|_|S)N)r r)rÚvaluer r r Ú get_eventrs   zParser.get_eventcCs(| ¡}t|j|j|jd}|j|_|S)N)Úencoding)Ú get_tokenZStreamStartEventÚ start_markÚend_markrÚparse_implicit_document_startr)rÚtokenÚeventr r r rs   zParser.parse_stream_startcCs\| ttt¡sP|j|_| ¡}|j}}t||dd}|j   |j ¡|j |_ |S| ¡SdS)NF)Úexplicit)Ú check_tokenÚDirectiveTokenÚDocumentStartTokenÚStreamEndTokenÚ DEFAULT_TAGSrÚ peek_tokenrÚDocumentStartEventrÚappendÚparse_document_endÚparse_block_noderÚparse_document_start)rr"rr r#r r r r!‹s z$Parser.parse_implicit_document_startcCsÐx| t¡r| ¡qW| t¡sœ| ¡}|j}| ¡\}}| t¡sdtddd| ¡j | ¡jƒ‚| ¡}|j }t ||d||d}|j   |j¡|j|_n0| ¡}t|j|j ƒ}|j r¼t‚|jrÆt‚d|_|S)Nz)expected '', but found %rT)r$ÚversionÚtags)r%ÚDocumentEndTokenrr(r*rÚprocess_directivesr'rÚidr r+rr,r-Úparse_document_contentrZStreamEndEventÚAssertionErrorr)rr"rr0r1r r#r r r r/Ÿs.           zParser.parse_document_startcCsL| ¡}|j}}d}| t¡r2| ¡}|j}d}t|||d}|j|_|S)NFT)r$) r*rr%r2rr ZDocumentEndEventr/r)rr"rr r$r#r r r r-¾s  zParser.parse_document_endcCs<| tttt¡r0| | ¡j¡}|j  ¡|_ |S|  ¡SdS)N) r%r&r'r2r(Úprocess_empty_scalarr*rrÚpoprr.)rr#r r r r5Ðs   zParser.parse_document_contentcCsd|_i|_x¢| t¡r®| ¡}|jdkrp|jdk rDtddd|jƒ‚|j\}}|dkrftddd|jƒ‚|j|_q|jdkr|j\}}||jkr¢tddd||jƒ‚||j|<qW|jrÈ|j|j  ¡f}n |jdf}x(|j D]}||jkrÚ|j ||j|<qÚW|S)NZYAMLzfound duplicate YAML directiverz:found incompatible YAML document (version 1.* is required)ZTAGzduplicate tag handle %r) r rr%r&rÚnamerrrÚcopyr))rr"ÚmajorÚminorÚhandleÚprefixrÚkeyr r r r3Ùs8            zParser.process_directivescCs |jddS)NT)Úblock)Ú parse_node)rr r r r.szParser.parse_block_nodecCs| ¡S)N)rA)rr r r Úparse_flow_node szParser.parse_flow_nodecCs|jdddS)NT)r@Úindentless_sequence)rA)rr r r Ú'parse_block_node_or_indentless_sequencesz.Parser.parse_block_node_or_indentless_sequenceFc CsR| t¡r4| ¡}t|j|j|jƒ}|j ¡|_ nd}d}d}}} | t ¡r’| ¡}|j}|j}|j}| t ¡rØ| ¡}|j} |j}|j}nF| t ¡rØ| ¡}|j}} |j}|j}| t ¡rØ| ¡}|j}|j}|dk r&|\} } | dk r"| |j krt d|d| | ƒ‚|j | | }n| }|dkr>| ¡j}}d}|dkpR|dk} |rŒ| t¡rŒ| ¡j}t||| ||ƒ}|j|_ nÂ| t¡r| ¡}|j}|jr¸|dksÂ|dkrÈd} n|dkrØd} nd} t||| |j|||jd}|j ¡|_ nH| t¡r<| ¡j}t||| ||dd }|j|_ n| t¡rp| ¡j}t||| ||dd }|j|_ nÞ|rª| t¡rª| ¡j}t||| ||d d }|j|_ n¤|rä| t¡rä| ¡j}t||| ||d d }|j|_ nj|dk sø|dk rt||| d fd ||ƒ}|j ¡|_ n2|r(d } nd } | ¡}t d| |d|j|jƒ‚|S)Nzwhile parsing a nodezfound undefined tag handle %rr )TF)FT)FF)ÚstyleT)Ú flow_styleFÚr@Zflowzwhile parsing a %s nodez'expected the node content, but found %r) r%Z AliasTokenrZ AliasEventrrr rr8rZ AnchorTokenZTagTokenrrr*ÚBlockEntryTokenZSequenceStartEventÚparse_indentless_sequence_entryZ ScalarTokenÚplainÚ ScalarEventrEZFlowSequenceStartTokenÚparse_flow_sequence_first_entryZFlowMappingStartTokenÚMappingStartEventÚparse_flow_mapping_first_keyZBlockSequenceStartTokenÚ parse_block_sequence_first_entryZBlockMappingStartTokenÚparse_block_mapping_first_keyr4)rr@rCr"r#ÚanchorÚtagrr Ztag_markr=ÚsuffixZimplicitÚnoder r r rAs®                               zParser.parse_nodecCs| ¡}|j |j¡| ¡S)N)rrr,rÚparse_block_sequence_entry)rr"r r r rOxsz'Parser.parse_block_sequence_first_entrycCs¦| t¡rH| ¡}| tt¡s4|j |j¡| ¡S|j|_|  |j ¡S| t¡sv|  ¡}t d|j dd|j|jƒ‚| ¡}t|j|j ƒ}|j ¡|_|j  ¡|S)Nz while parsing a block collectionéÿÿÿÿz"expected , but found %r)r%rHrÚ BlockEndTokenrr,rUr.rr7r r*rrr4rÚSequenceEndEventr8)rr"r#r r r rU}s        z!Parser.parse_block_sequence_entrycCsr| t¡rL| ¡}| tttt¡s8|j |j¡|  ¡S|j|_ |  |j ¡S|  ¡}t|j|jƒ}|j ¡|_ |S)N)r%rHrÚKeyTokenÚ ValueTokenrWrr,rIr.rr7r r*rXrr8)rr"r#r r r rI’s    z&Parser.parse_indentless_sequence_entrycCs| ¡}|j |j¡| ¡S)N)rrr,rÚparse_block_mapping_key)rr"r r r rP¦sz$Parser.parse_block_mapping_first_keycCs¨| t¡rJ| ¡}| ttt¡s6|j |j¡| ¡S|j|_ |  |j ¡S| t¡sx|  ¡}t d|jdd|j|jƒ‚| ¡}t|j|j ƒ}|j ¡|_ |j ¡|S)Nzwhile parsing a block mappingrVz"expected , but found %r)r%rYrrZrWrr,Úparse_block_mapping_valuerDrr7r r*rrr4rÚMappingEndEventr8)rr"r#r r r r[«s       zParser.parse_block_mapping_keycCsl| t¡rL| ¡}| ttt¡s6|j |j¡| ¡S|j|_ |  |j ¡Sn|j|_ |  ¡}|  |j ¡SdS)N)r%rZrrYrWrr,r[rDrr7r r*r)rr"r r r r\¾s z Parser.parse_block_mapping_valuecCs"| ¡}|j |j¡|jddS)NT)Úfirst)rrr,rÚparse_flow_sequence_entry)rr"r r r rL×sz&Parser.parse_flow_sequence_first_entrycCsÌ| t¡sœ|sF| t¡r"| ¡n$| ¡}td|jdd|j|jƒ‚| t ¡r|| ¡}t ddd|j|j dd}|j |_ |S| t¡sœ|j |j¡| ¡S| ¡}t|j|j ƒ}|j ¡|_ |j ¡|S)Nzwhile parsing a flow sequencerVzexpected ',' or ']', but got %rT)rF)r%ÚFlowSequenceEndTokenÚFlowEntryTokenrr*rrr4rrYrMr Ú%parse_flow_sequence_entry_mapping_keyrrr,r_rBrXr8)rr^r"r#r r r r_Üs,        z Parser.parse_flow_sequence_entrycCsD| ¡}| ttt¡s,|j |j¡| ¡S|j|_ |  |j ¡SdS)N) rr%rZrar`rr,Ú'parse_flow_sequence_entry_mapping_valuerBrr7r )rr"r r r rbösz,Parser.parse_flow_sequence_entry_mapping_keycCsj| t¡rJ| ¡}| tt¡s4|j |j¡| ¡S|j|_ |  |j ¡Sn|j|_ |  ¡}|  |j ¡SdS)N)r%rZrrar`rr,Ú%parse_flow_sequence_entry_mapping_endrBrr7r r*r)rr"r r r rcs  z.Parser.parse_flow_sequence_entry_mapping_valuecCs|j|_| ¡}t|j|jƒS)N)r_rr*r]r)rr"r r r rdsz,Parser.parse_flow_sequence_entry_mapping_endcCs"| ¡}|j |j¡|jddS)NT)r^)rrr,rÚparse_flow_mapping_key)rr"r r r rNsz#Parser.parse_flow_mapping_first_keycCsâ| t¡s²|sF| t¡r"| ¡n$| ¡}td|jdd|j|jƒ‚| t ¡r’| ¡}| t tt¡s||j   |j ¡| ¡S|j |_| |j¡Sn | t¡s²|j   |j¡| ¡S| ¡}t|j|jƒ}|j  ¡|_|j ¡|S)Nzwhile parsing a flow mappingrVzexpected ',' or '}', but got %r)r%ÚFlowMappingEndTokenrarr*rrr4rrYrZrr,Úparse_flow_mapping_valuerBrr7r Úparse_flow_mapping_empty_valuer]r8)rr^r"r#r r r res.        zParser.parse_flow_mapping_keycCsj| t¡rJ| ¡}| tt¡s4|j |j¡| ¡S|j|_ |  |j ¡Sn|j|_ |  ¡}|  |j ¡SdS)N)r%rZrrarfrr,rerBrr7r r*r)rr"r r r rg9s  zParser.parse_flow_mapping_valuecCs|j|_| | ¡j¡S)N)rerr7r*r)rr r r rhGsz%Parser.parse_flow_mapping_empty_valuecCstdddd||ƒS)N)TFrG)rK)rZmarkr r r r7KszParser.process_empty_scalarN)FF)F)F)#rrrr)rrrrrrr!r/r-r5r3r.rBrDrArOrUrIrPr[r\rLr_rbrcrdrNrergrhr7r r r r rHsB    / g    N)Ú__all__ÚerrorrÚtokensÚeventsÚscannerrrr r r r Ú>s