a K•ºfOÈã@sLddgZddlmZddlTGdd„deƒZGdd„dƒZGdd„dƒZd S) ÚScannerÚ ScannerErroré)ÚMarkedYAMLError)Ú*c@s eZdZdS)rN)Ú__name__Ú __module__Ú __qualname__©r r úp/sparta/input/_build_configuration/image_build+validate/lib/bmcenv/lib64/python3.9/site-packages/yaml/scanner.pyr sc@seZdZdd„ZdS)Ú SimpleKeycCs(||_||_||_||_||_||_dS©N)Ú token_numberÚrequiredÚindexÚlineÚcolumnÚmark)Úselfr rrrrrr r r Ú__init__&s zSimpleKey.__init__N)rrrrr r r r r #sr c@szeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd „Zd!d"„Zd#d$„Zd%d&„Zd'd(„Zd)d*„Zd+d,„Zd-d.„Zd/d0„Zd1d2„Zd3d4„Zd5d6„Zd7d8„Zd9d:„Zd;d<„Z d=d>„Z!d?d@„Z"dAdB„Z#dCdD„Z$dEdF„Z%dGdH„Z&dIdJ„Z'dKdL„Z(dMdN„Z)dOdP„Z*dQdR„Z+dSdT„Z,dUdV„Z-dWdX„Z.dYdZ„Z/d[d\„Z0d]d^„Z1d_d`„Z2dadb„Z3dcdd„Z4dedf„Z5dgdh„Z6didj„Z7dkdl„Z8dmdn„Z9dodp„Z:dqdr„Z;dsdt„Zdydz„Z?d{d|„Z@d}d~dd€d€dd‚dƒd„d…d†d‡dˆd‰dŠd‹dŒddŽœZAddd‘d’œZBd“d”„ZCd•d–„ZDd—d˜„ZEd™dš„ZFd›dœ„ZGddž„ZHdŸd „ZId¡d¢„ZJd£d¤„ZKd¥S)¦rcCs<d|_d|_g|_| ¡d|_d|_g|_d|_i|_dS)zInitialize the scanner.FééÿÿÿÿTN) ÚdoneÚ flow_levelÚtokensÚfetch_stream_startÚ tokens_takenÚindentÚindentsÚallow_simple_keyÚpossible_simple_keys©rr r r r0s zScanner.__init__cGsD| ¡r| ¡q|jr@|s dS|D]}t|jd|ƒr$dSq$dS)NTrF)Úneed_more_tokensÚfetch_more_tokensrÚ isinstance)rÚchoicesÚchoicer r r Ú check_tokenqs zScanner.check_tokencCs*| ¡r| ¡q|jr"|jdSdSdS)Nr)r!r"rr r r r Ú peek_token}s   zScanner.peek_tokencCs6| ¡r| ¡q|jr2|jd7_|j d¡SdS)Nrr)r!r"rrÚpopr r r r Ú get_token‡s  zScanner.get_tokencCs2|jr dS|jsdS| ¡| ¡|jkr.dSdS)NFT)rrÚstale_possible_simple_keysÚnext_possible_simple_keyrr r r r r!‘szScanner.need_more_tokenscCsÒ| ¡| ¡| |j¡| ¡}|dkr4| ¡S|dkrL| ¡rL| ¡S|dkrd| ¡rd|  ¡S|dkr||  ¡r||  ¡S|dkrŒ|  ¡S|dkrœ|  ¡S|dkr¬| ¡S|dkr¼| ¡S|d krÌ| ¡S|dkrä| ¡rä| ¡S|d krü| ¡rü| ¡S|d kr| ¡r| ¡S|d kr*| ¡S|d kr<| ¡S|dkrN| ¡S|dkrh|jsh| ¡S|dkr‚|js‚| ¡S|dkr”| ¡S|dkr¦| ¡S| ¡r¸|  ¡St!ddd|| "¡ƒ‚dS)Núú%ú-Ú.ú[Ú{ú]Ú}ú,ú?ú:rú&ú!ú|ú>ú'ú"z!while scanning for the next tokenz.found character %r that cannot start any token)#Úscan_to_next_tokenr*Ú unwind_indentrÚpeekÚfetch_stream_endÚcheck_directiveÚfetch_directiveÚcheck_document_startÚfetch_document_startÚcheck_document_endÚfetch_document_endÚfetch_flow_sequence_startÚfetch_flow_mapping_startÚfetch_flow_sequence_endÚfetch_flow_mapping_endÚfetch_flow_entryÚcheck_block_entryÚfetch_block_entryÚ check_keyÚ fetch_keyÚ check_valueÚ fetch_valueÚ fetch_aliasÚ fetch_anchorÚ fetch_tagrÚ fetch_literalÚ fetch_foldedÚ fetch_singleÚ fetch_doubleÚ check_plainÚ fetch_plainrÚget_mark©rÚchr r r r"œs`        þzScanner.fetch_more_tokenscCs6d}|jD]&}|j|}|dus*|j|kr |j}q |Sr )rr )rÚmin_token_numberÚlevelÚkeyr r r r+s   z Scanner.next_possible_simple_keycCs\t|jƒD]L}|j|}|j|jks4|j|jdkr |jrNtd|jd| ¡ƒ‚|j|=q dS)Niúwhile scanning a simple keyúcould not find expected ':')Úlistrrrrrrr[)rr_r`r r r r*s  ÿÿz"Scanner.stale_possible_simple_keyscCs^|j o|j|jk}|jrZ| ¡|jt|jƒ}t|||j |j |j|  ¡ƒ}||j |j<dSr ) rrrrÚremove_possible_simple_keyrÚlenrr rrr[r)rrr r`r r r Úsave_possible_simple_key'sÿz Scanner.save_possible_simple_keycCs@|j|jvr<|j|j}|jr2td|jd| ¡ƒ‚|j|j=dS)Nrarb)rrrrrr[)rr`r r r rd8s  ÿz"Scanner.remove_possible_simple_keycCs@|jr dS|j|kr<| ¡}|j ¡|_|j t||ƒ¡q dSr )rrr[rr(rÚappendÚ BlockEndToken)rrrr r r r>Es   zScanner.unwind_indentcCs&|j|kr"|j |j¡||_dSdS)NTF)rrrg)rrr r r Ú add_indent]s  zScanner.add_indentcCs$| ¡}|j t|||jd¡dS)N)Úencoding)r[rrgÚStreamStartTokenrj©rrr r r rgs ÿzScanner.fetch_stream_startcCsB| d¡| ¡d|_i|_| ¡}|j t||ƒ¡d|_dS)NrFT) r>rdrrr[rrgÚStreamEndTokenrrlr r r r@ss zScanner.fetch_stream_endcCs,| d¡| ¡d|_|j | ¡¡dS)NrF)r>rdrrrgÚscan_directiver r r r rB†s zScanner.fetch_directivecCs| t¡dSr )Úfetch_document_indicatorÚDocumentStartTokenr r r r rD’szScanner.fetch_document_startcCs| t¡dSr )roÚDocumentEndTokenr r r r rF•szScanner.fetch_document_endcCsH| d¡| ¡d|_| ¡}| d¡| ¡}|j |||ƒ¡dS)NrFé)r>rdrr[Úforwardrrg©rÚ TokenClassÚ start_markÚend_markr r r ro˜s  z Scanner.fetch_document_indicatorcCs| t¡dSr )Úfetch_flow_collection_startÚFlowSequenceStartTokenr r r r rG¨sz!Scanner.fetch_flow_sequence_startcCs| t¡dSr )rxÚFlowMappingStartTokenr r r r rH«sz Scanner.fetch_flow_mapping_startcCsJ| ¡|jd7_d|_| ¡}| ¡| ¡}|j |||ƒ¡dS)NrT)rfrrr[rsrrgrtr r r rx®sz#Scanner.fetch_flow_collection_startcCs| t¡dSr )Úfetch_flow_collection_endÚFlowSequenceEndTokenr r r r rI¿szScanner.fetch_flow_sequence_endcCs| t¡dSr )r{ÚFlowMappingEndTokenr r r r rJÂszScanner.fetch_flow_mapping_endcCsJ| ¡|jd8_d|_| ¡}| ¡| ¡}|j |||ƒ¡dS)NrF)rdrrr[rsrrgrtr r r r{Åsz!Scanner.fetch_flow_collection_endcCs<d|_| ¡| ¡}| ¡| ¡}|j t||ƒ¡dS©NT)rrdr[rsrrgÚFlowEntryToken)rrvrwr r r rKÖs zScanner.fetch_flow_entrycCs‚|jsF|jstddd| ¡ƒ‚| |j¡rF| ¡}|j t||ƒ¡nd|_|  ¡| ¡}|  ¡| ¡}|j t ||ƒ¡dS)Nz%sequence entries are not allowed hereT) rrrr[rirrrgÚBlockSequenceStartTokenrdrsÚBlockEntryToken©rrrvrwr r r rMäsþ zScanner.fetch_block_entrycCs„|jsD|jstddd| ¡ƒ‚| |j¡rD| ¡}|j t||ƒ¡|j |_|  ¡| ¡}|  ¡| ¡}|j t ||ƒ¡dS)Nz!mapping keys are not allowed here) rrrr[rirrrgÚBlockMappingStartTokenrdrsÚKeyTokenr‚r r r rOsþ  zScanner.fetch_keycCs|j|jvr||j|j}|j|j=|j |j|jt|j|jƒ¡|jst| |j ¡rt|j |j|jt |j|jƒ¡d|_ n\|jsš|j sšt ddd|  ¡ƒ‚|jsÆ| |j ¡rÆ|  ¡}|j t ||ƒ¡|j |_ | ¡|  ¡}| ¡|  ¡}|j t||ƒ¡dS)NFz#mapping values are not allowed here)rrrÚinsertr rr„rrirrƒrrr[rgrdrsÚ ValueToken)rr`rrvrwr r r rQ!s8    ÿ  ÿþ  zScanner.fetch_valuecCs$| ¡d|_|j | t¡¡dS©NF)rfrrrgÚ scan_anchorÚ AliasTokenr r r r rRYszScanner.fetch_aliascCs$| ¡d|_|j | t¡¡dSr‡)rfrrrgrˆÚ AnchorTokenr r r r rSdszScanner.fetch_anchorcCs"| ¡d|_|j | ¡¡dSr‡)rfrrrgÚscan_tagr r r r rToszScanner.fetch_tagcCs|jdddS)Nr9©Ústyle©Úfetch_block_scalarr r r r rUzszScanner.fetch_literalcCs|jdddS)Nr:rŒrŽr r r r rV}szScanner.fetch_foldedcCs$d|_| ¡|j | |¡¡dSr~)rrdrrgÚscan_block_scalar©rrr r r r€szScanner.fetch_block_scalarcCs|jdddS)Nr;rŒ©Úfetch_flow_scalarr r r r rW‹szScanner.fetch_singlecCs|jdddS)Nr<rŒr’r r r r rXŽszScanner.fetch_doublecCs$| ¡d|_|j | |¡¡dSr‡)rfrrrgÚscan_flow_scalarr‘r r r r“‘szScanner.fetch_flow_scalarcCs"| ¡d|_|j | ¡¡dSr‡)rfrrrgÚ scan_plainr r r r rZœszScanner.fetch_plaincCs|jdkrdSdS)NrT)rr r r r rA«s zScanner.check_directivecCs.|jdkr*| d¡dkr*| d¡dvr*dSdS)Nrrrú---õ …

T©rÚprefixr?r r r r rC²s   ÿzScanner.check_document_startcCs.|jdkr*| d¡dkr*| d¡dvr*dSdS)Nrrrú...r—Tr˜r r r r rEºs   ÿzScanner.check_document_endcCs| d¡dvS)Nrr—)r?r r r r rLÂszScanner.check_block_entrycCs|jr dS| d¡dvSdS©NTrr—©rr?r r r r rNÇszScanner.check_keycCs|jr dS| d¡dvSdSr›rœr r r r rPÑszScanner.check_valuecCs6| ¡}|dvp4| d¡dvo4|dkp4|j o4|dvS)Nu …

-?:,[]{}#&*!|>'"%@`rr—r.z?:)r?rr\r r r rYÛs þzScanner.check_plaincCs~|jdkr| ¡dkr| ¡d}|sz| ¡dkr<| ¡q&| ¡dkr^| ¡dvr^| ¡qH| ¡rt|jsxd|_q"d}q"dS)NruFú ú#õ …

T)rr?rsÚscan_line_breakrr)rÚfoundr r r r=ðs     zScanner.scan_to_next_tokencCsŒ| ¡}| ¡| |¡}d}|dkr:| |¡}| ¡}n:|dkrV| |¡}| ¡}n| ¡}| ¡dvrt| ¡q^| |¡t||||ƒS)NÚYAMLÚTAGrŸ)r[rsÚscan_directive_nameÚscan_yaml_directive_valueÚscan_tag_directive_valuer?Úscan_directive_ignored_lineÚDirectiveToken)rrvÚnameÚvaluerwr r r rns        zScanner.scan_directivecCsÄd}| |¡}d|kr"dksXnd|kr8dksXnd|krNdksXn|dvrl|d 7}| |¡}q|s†td |d || ¡ƒ‚| |¡}| |¡| ¡}|d vrÀtd |d || ¡ƒ‚|S) NrÚ0Ú9ÚAÚZÚaÚzú-_rúwhile scanning a directiveú6expected alphabetic or numeric character, but found %rõ …

)r?rr[r™rs)rrvÚlengthr]rªr r r r¤&s2 Bÿ ÿþ  ÿþzScanner.scan_directive_namecCs†| ¡dkr| ¡q| |¡}| ¡dkrFtd|d| ¡| ¡ƒ‚| ¡| |¡}| ¡dvr~td|d| ¡| ¡ƒ‚||fS)Nrr/r²z%expected a digit or '.', but found %rr´z%expected a digit or ' ', but found %r)r?rsÚscan_yaml_directive_numberrr[)rrvÚmajorÚminorr r r r¥;s      þ   þz!Scanner.scan_yaml_directive_valuecCs|| ¡}d|krdks4ntd|d|| ¡ƒ‚d}d| |¡krRdkr`nn |d7}q8t| |¡ƒ}| |¡|S)Nr«r¬r²zexpected a digit, but found %rrr)r?rr[Úintr™rs)rrvr]rµrªr r r r¶Ls ÿ  z"Scanner.scan_yaml_directive_numbercCsH| ¡dkr| ¡q| |¡}| ¡dkr6| ¡q | |¡}||fS)Nr)r?rsÚscan_tag_directive_handleÚscan_tag_directive_prefix)rrvÚhandler™r r r r¦Ys      z Scanner.scan_tag_directive_valuecCs6| d|¡}| ¡}|dkr2td|d|| ¡ƒ‚|S)NÚ directiverr²úexpected ' ', but found %r)Úscan_tag_handler?rr[©rrvrªr]r r r rºcs  ÿz!Scanner.scan_tag_directive_handlecCs6| d|¡}| ¡}|dvr2td|d|| ¡ƒ‚|S)Nr½r´r²r¾)Ú scan_tag_urir?rr[rÀr r r r»ls  ÿz!Scanner.scan_tag_directive_prefixcCsj| ¡dkr| ¡q| ¡dkr8| ¡dvr8| ¡q"| ¡}|dvr^td|d|| ¡ƒ‚| ¡dS)NrržrŸr²ú0expected a comment or a line break, but found %r©r?rsrr[r ©rrvr]r r r r§us     ÿþz#Scanner.scan_directive_ignored_linec Cs| ¡}| ¡}|dkrd}nd}| ¡d}| |¡}d|krLdks‚nd|krbdks‚nd |krxd ks‚n|d vr–|d 7}| |¡}q8|s´td ||d|| ¡ƒ‚| |¡}| |¡| ¡}|dvròtd ||d|| ¡ƒ‚| ¡}||||ƒS)NrÚaliasÚanchorrr«r¬r­r®r¯r°r±rzwhile scanning an %sr³u …

?:,]}%@`)r[r?rsrr™) rrurvÚ indicatorr©rµr]rªrwr r r rˆƒs@  Bÿ  ÿþ   ÿþzScanner.scan_anchorc Cs"| ¡}| d¡}|dkrdd}| d¡| d|¡}| ¡dkrZtd|d| ¡| ¡ƒ‚| ¡nz|dvr~d}d }| ¡n`d}d }|d vr°|d krœd }q°|d7}| |¡}q†d }|rÆ| d|¡}n d }| ¡| d|¡}| ¡}|d vrtd |d|| ¡ƒ‚||f}| ¡}t|||ƒS)Nrú<éÚtagr:zwhile parsing a tagzexpected '>', but found %rr—r8Fr´Tzwhile scanning a tagr¾)r[r?rsrÁrr¿ÚTagToken) rrvr]r¼ÚsuffixrµÚ use_handlerªrwr r r r‹§sL     þ      ÿzScanner.scan_tagcCs°|dkrd}nd}g}| ¡}| ¡| |¡\}}| |¡|jd}|dkrTd}|durv| ¡\}} } t|| ƒ} n||d} | | ¡\}} d} |j| krr|  ¡dkrr|  |¡|  ¡dv} d}|  |¡d vrà|d7}qÈ|  |  |¡¡| |¡|  ¡} | | ¡\}} |j| krr|  ¡dkrr|r`| d kr`| r`|  ¡dvr`|sj|  d ¡n |  | ¡q”qrq”|dur†|  | ¡|durš|  |¡td |¡d|| |ƒS) Nr:TFrÚr,ú rrŸÚ r)r[rsÚscan_block_scalar_indicatorsÚscan_block_scalar_ignored_linerÚscan_block_scalar_indentationÚmaxÚscan_block_scalar_breaksrr?Úextendrgr™r Ú ScalarTokenÚjoin)rrÚfoldedÚchunksrvÚchompingÚ incrementÚ min_indentÚbreaksÚ max_indentrwrÚ line_breakÚleading_non_spacerµr r r rÐsX        ÿ ÿ      ÿzScanner.scan_block_scalarcCsød}d}| ¡}|dvrn|dkr&d}nd}| ¡| ¡}|dvrÊt|ƒ}|dkrdtd|d| ¡ƒ‚| ¡n\|dvrÊt|ƒ}|dkr˜td|d| ¡ƒ‚| ¡| ¡}|dvrÊ|dkr¾d}nd}| ¡| ¡}|d vrðtd|d || ¡ƒ‚||fS) Nz+-ú+TFÚ 0123456789rúwhile scanning a block scalarz| | |¡¡| |¡| ¡}|sv|dkrv| d¡dkrv| d¡| d¡q|r‚|dksŽ|s¢|dvr¢| |¡| ¡q|r¬|dkr¬| ¡| ¡}||jvræ| |j|¡| ¡nÄ||jvrn|j|}| ¡t|ƒD]6}| |¡dvr td |d || |¡f| ¡ƒ‚q t | |¡d ƒ}| t |ƒ¡| |¡n<|d vr”|  ¡|  |  ||¡¡ntd |d || ¡ƒ‚q|SqdS)Nru'"\ …

rr;rÉz"\ròÚ0123456789ABCDEFabcdefz%while scanning a double-quoted scalarz@expected escape sequence of %d hexadecimal numbers, but found %réræz!found unknown escape character %r)r?rgr™rsÚESCAPE_REPLACEMENTSÚ ESCAPE_CODESÚrangerr[r¹Úchrr rÖÚscan_flow_scalar_breaks)rrérvrÚrµr]ÚkÚcoder r r rç¡sR            ÿþ   ÿz#Scanner.scan_flow_scalar_non_spacesc Cs°g}d}| |¡dvr |d7}q| |¡}| |¡| ¡}|dkrXtd|d| ¡ƒ‚nT|dvr¢| ¡}| ||¡}|dkrˆ| |¡n|s–| d ¡| |¡n | |¡|S) NrrÏrr,úwhile scanning a quoted scalarzfound unexpected end of streamrærÐr) r?r™rsrr[r r rgrÖ) rrérvrÚrµÚ whitespacesr]ràrÞr r r rèÌs*   ÿ     zScanner.scan_flow_scalar_spacescCszg}| d¡}|dks|dkr>| d¡dvr>td|d| ¡ƒ‚| ¡dvrT| ¡q>| ¡dvrp| | ¡¡q|SqdS) Nrrr–ršr—rz#found unexpected document separatorrÏræ)r™r?rr[rsrgr )rrérvrÚr™r r r r äs  ÿÿ   zScanner.scan_flow_scalar_breakscCsg}| ¡}|}|jd}g}d}| ¡dkr0qð| |¡}|dvs„|dkrj| |d¡d|jrbdndvs„|jrz|dvrzq„|d7}q0|dkrŽqðd |_| |¡| | |¡¡| |¡| ¡}|  ||¡}|rð| ¡dksð|js|j |krqðqt d  |¡d ||ƒS) Nrrržr—r6z,[]{}rÎz,?[]{}FT) r[rr?rrrÖrgr™rsÚscan_plain_spacesrr×rØ)rrÚrvrwrÚspacesrµr]r r r r•ösJ   ÿ ÿþüü    ÿÿzScanner.scan_plainc Cs&g}d}| |¡dvr |d7}q| |¡}| |¡| ¡}|dvr| ¡}d|_| d¡}|dksn|dkr€| d¡d vr€dSg} | ¡d vrâ| ¡dkr¦| ¡q„|  | ¡¡| d¡}|dksÎ|dkr„| d¡d vr„dSq„|d krö| |¡n| s| d¡| | ¡n|r"| |¡|S) NrrrræTrrr–ršr—rårÐ)r?r™rsr rrgrÖ) rrrvrÚrµrr]ràr™rÞr r r rsB      ÿ     ÿ    zScanner.scan_plain_spacescCsê| ¡}|dkr*td||d|| ¡ƒ‚d}| |¡}|dkrÒd|krTdksŠnd|krjd ksŠnd |kr€d ksŠn|d vrž|d7}| |¡}q@|dkrÊ| |¡td||d|| ¡ƒ‚|d7}| |¡}| |¡|S) Nr8úwhile scanning a %szexpected '!', but found %rrrr«r¬r­r®r¯r°r±)r?rr[rsr™)rr©rvr]rµrªr r r r¿Ds,  ÿ Bÿ    ÿ  zScanner.scan_tag_handlecCsôg}d}| |¡}d|kr&dks\nd|krrirr@rBrDrFrorGrHrxrIrJr{rKrMrOrQrRrSrTrUrVrrWrXr“rZrArCrErLrNrPrYr=rnr¤r¥r¶r¦rºr»r§rˆr‹rrÑrÒrÓrÕr”rr rçrèr r•rr¿rÁrr r r r r r.s¼A    l    !8       #    $)L( îý+)%N)Ú__all__Úerrorrrrr rr r r r Ús