Viewing File: /opt/alt/python35/lib64/python3.5/site-packages/yaml/__pycache__/emitter.cpython-35.opt-1.pyc



!w:[ʧ@sfddgZddlmZddlTGdddeZGdddZGdddZd	S)
EmitterEmitterError)	YAMLError)*c@seZdZdS)rN)__name__
__module____qualname__r	r	/emitter.pyrsc@seZdZddZdS)ScalarAnalysisc		CsL||_||_||_||_||_||_||_||_dS)N)scalarempty	multilineallow_flow_plainallow_block_plainallow_single_quotedallow_double_quotedallow_block)	selfrr
rrrrrrr	r	r
__init__s							zScalarAnalysis.__init__N)rrrrr	r	r	r
rsrc@seZdZddddiZdddddddZddZd	d
ZddZd
dZddddZ	ddZ
ddZddZdddZ
ddZddZddddddZd d!Zd"d#Zd$d%Zd&d'Zd(d)Zd*d+Zd,d-Zd.d/Zd0d1Zd2d3Zd4d5Zd6d7Zdd8d9Zd:d;Zd<d=Zdd>d?Z d@dAZ!dBdCZ"dDdEZ#dFdGZ$dHdIZ%dJdKZ&dLdMZ'dNdOZ(dPdQZ)dRdSZ*dTdUZ+dVdWZ,dXdYZ-dZd[Z.d\d]Z/d^d_Z0d`daZ1dbdcZ2dddeZ3dddfdgZ4dhdiZ5ddjdkZ6dldmZ7dndoZ8dpdqdrZ9dsdtdudvdwdxdydzd{d|d}d~ddddddddddddddddddiZ:dpddZ;ddZ<ddZ=ddZ>dpddZ?dS)r!ztag:yaml.org,2002:z!!NcCse||_d|_g|_|j|_g|_d|_g|_d|_d|_	d|_
d|_d|_d|_
d|_d|_d|_d|_d|_||_||_d|_|rd|kodknr||_d|_|r||jdkr||_d|_|dkr4||_d|_d|_d|_d|_d|_dS)NFTr
P


)rrr)streamencodingstatesexpect_stream_startstateeventseventindentsindent
flow_levelroot_contextsequence_contextmapping_contextsimple_key_contextlinecolumn
whitespace	indention
open_ended	canonical
allow_unicodebest_indent
best_widthbest_line_breaktag_prefixesprepared_anchorprepared_taganalysisstyle)rrr1r&widthr2Z
line_breakr	r	r
r&sD																				"									zEmitter.__init__cCsg|_d|_dS)N)r r")rr	r	r
disposejs	zEmitter.disposecCsO|jj|x8|jsJ|jjd|_|jd|_qWdS)Nr)r#appendneed_more_eventspopr$r")rr$r	r	r
emitos

zEmitter.emitcCsv|js
dS|jd}t|tr6|jdSt|trR|jdSt|trn|jdSdSdS)NTrrrF)r#
isinstanceDocumentStartEventneed_eventsSequenceStartEventMappingStartEvent)rr$r	r	r
r>xs	



zEmitter.need_more_eventscCsd}x|jddD]o}t|ttfrB|d7}n7t|ttfrd|d8}nt|tryd}|dkrdSqWt|j|dkS)NrrF)r#rBrCCollectionStartEventDocumentEndEventZCollectionEndEventStreamEndEventlen)rcountlevelr$r	r	r
rDs

zEmitter.need_eventsFcCs_|jj|j|jdkrC|r7|j|_q[d|_n|s[|j|j7_dS)Nr)r%r=r&r3)rflow
indentlessr	r	r
increase_indentszEmitter.increase_indentcCspt|jtrY|jjr@t|jdr@|jj|_|j|j|_nt	d|jdS)Nrz%expected StreamStartEvent, but got %s)
rBr$ZStreamStartEventrhasattrrwrite_stream_startexpect_first_document_startr"r)rr	r	r
r!s
zEmitter.expect_stream_startcCstd|jdS)Nzexpected nothing, but got %s)rr$)rr	r	r
expect_nothingszEmitter.expect_nothingcCs|jddS)NfirstT)expect_document_start)rr	r	r
rSsz#Emitter.expect_first_document_startc	Cst|jtr|jjs*|jjrM|jrM|jdd|j|jjr{|j|jj}|j	||j
j|_|jjr
t
|jjj}xY|D]Q}|jj|}||j|<|j|}|j|}|j||qW|oN|jjoN|joN|jjoN|jjoN|j}|s|j|jdd|jr|j|j|_nat|jtr|jr|jdd|j|j|j|_ntd|jdS)Nz...Tz---z'expected DocumentStartEvent, but got %s)rBr$rCversionZtagsr0write_indicatorwrite_indentprepare_versionwrite_version_directiveDEFAULT_TAG_PREFIXEScopyr6sortedkeysprepare_tag_handleprepare_tag_prefixwrite_tag_directiveexplicitr1check_empty_documentexpect_document_rootr"rJwrite_stream_endrTr)	rrUversion_textZhandleshandleprefixhandle_textprefix_textimplicitr	r	r
rVsB!





	
	

zEmitter.expect_document_startcCsrt|jtr[|j|jjrB|jdd|j|j|j|_nt	d|jdS)Nz...Tz%expected DocumentEndEvent, but got %s)
rBr$rIrYrcrXflush_streamrVr"r)rr	r	r
expect_document_ends


zEmitter.expect_document_endcCs'|jj|j|jdddS)NrootT)r r=rnexpect_node)rr	r	r
reszEmitter.expect_document_rootcCsT||_||_||_||_t|jtrC|jn
t|jtt	fr=|j
d|jt|jtr|jqPt|jt
r|js|js|jjs|jr|jq:|jqPt|jtrP|js#|js#|jjs#|jr0|jqP|jntd|jdS)N&zexpected NodeEvent, but got %s)r(r)r*r+rBr$
AliasEventexpect_aliasScalarEventrHprocess_anchorprocess_tag
expect_scalarrEr'r1Z
flow_stylecheck_empty_sequenceexpect_flow_sequenceexpect_block_sequencerFcheck_empty_mappingexpect_flow_mappingexpect_block_mappingr)rrosequencemapping
simple_keyr	r	r
rps,				







zEmitter.expect_nodecCsA|jjdkrtd|jd|jj|_dS)Nz!anchor is not specified for aliasr)r$anchorrrur r?r")rr	r	r
rss
zEmitter.expect_aliascCsB|jdd|j|jj|_|jj|_dS)NrNT)rPprocess_scalarr%r?r&r r")rr	r	r
rw
s
zEmitter.expect_scalarcCsE|jdddd|jd7_|jdd|j|_dS)N[Tr.rrN)rXr'rPexpect_first_flow_sequence_itemr")rr	r	r
ryszEmitter.expect_flow_sequencecCst|jtrX|jj|_|jd8_|jdd|jj|_	nH|j
ss|j|jkr}|j
|jj|j|jdddS)Nr]Fr~T)rBr$SequenceEndEventr%r?r&r'rXr r"r1r-r4rYr=expect_flow_sequence_itemrp)rr	r	r
rs
z'Emitter.expect_first_flow_sequence_itemcCst|jtr{|jj|_|jd8_|jrV|jdd|j	|jdd|j
j|_nX|jdd|js|j|j
kr|j	|j
j|j|jdddS)Nr,Frr~T)rBr$rr%r?r&r'r1rXrYr r"r-r4r=rrp)rr	r	r
r$s	

z!Emitter.expect_flow_sequence_itemcCsE|jdddd|jd7_|jdd|j|_dS)N{Tr.rrN)rXr'rPexpect_first_flow_mapping_keyr")rr	r	r
r|6szEmitter.expect_flow_mappingcCst|jtrX|jj|_|jd8_|jdd|jj|_	n|j
ss|j|jkr}|j
|j
r|jr|jj|j|jddddn3|jdd|jj|j|jdddS)Nr}FrTr?)rBr$MappingEndEventr%r?r&r'rXr r"r1r-r4rYcheck_simple_keyr= expect_flow_mapping_simple_valuerpexpect_flow_mapping_value)rr	r	r
r<s
z%Emitter.expect_first_flow_mapping_keycCs)t|jtr{|jj|_|jd8_|jrV|jdd|j	|jdd|j
j|_n|jdd|js|j|j
kr|j	|jr|jr|j
j|j|jddddn3|jdd|j
j|j|jdddS)	NrrFrrTrr)rBr$rr%r?r&r'r1rXrYr r"r-r4rr=rrpr)rr	r	r
expect_flow_mapping_keyMs"	

zEmitter.expect_flow_mapping_keycCs7|jdd|jj|j|jdddS)N:FrT)rXr r=rrp)rr	r	r
rbsz(Emitter.expect_flow_mapping_simple_valuecCs\|js|j|jkr%|j|jdd|jj|j|jdddS)NrTr)	r1r-r4rYrXr r=rrp)rr	r	r
rgs

z!Emitter.expect_flow_mapping_valuecCs9|jo|j}|jddd||j|_dS)NrNFrO)r*r/rP expect_first_block_sequence_itemr")rrOr	r	r
rzpszEmitter.expect_block_sequencecCs|jddS)NrUT)expect_block_sequence_item)rr	r	r
rusz(Emitter.expect_first_block_sequence_itemcCs|r@t|jtr@|jj|_|jj|_nC|j|j	dddd|jj
|j|jdddS)N-Tr/r~)
rBr$rr%r?r&r r"rYrXr=rrp)rrUr	r	r
rxs
z"Emitter.expect_block_sequence_itemcCs |jdd|j|_dS)NrNF)rPexpect_first_block_mapping_keyr")rr	r	r
r}szEmitter.expect_block_mappingcCs|jddS)NrUT)expect_block_mapping_key)rr	r	r
rsz&Emitter.expect_first_block_mapping_keycCs|r@t|jtr@|jj|_|jj|_n{|j|j	r|jj
|j|jddddn9|j
dddd|jj
|j|jdddS)NrTrrr/)rBr$rr%r?r&r r"rYrr=!expect_block_mapping_simple_valuerprXexpect_block_mapping_value)rrUr	r	r
rs
z Emitter.expect_block_mapping_keycCs7|jdd|jj|j|jdddS)NrFrT)rXr r=rrp)rr	r	r
rsz)Emitter.expect_block_mapping_simple_valuecCsG|j|jdddd|jj|j|jdddS)NrTr/r)rYrXr r=rrp)rr	r	r
rs
z"Emitter.expect_block_mapping_valuecCs/t|jto.|jo.t|jdtS)Nr)rBr$rEr#r)rr	r	r
rxszEmitter.check_empty_sequencecCs/t|jto.|jo.t|jdtS)Nr)rBr$rFr#r)rr	r	r
r{szEmitter.check_empty_mappingcCsqt|jts|jr!dS|jd}t|top|jdkop|jdkop|jop|jdkS)NFr)	rBr$rCr#rtrtagrlvalue)rr$r	r	r
rds

zEmitter.check_empty_documentcCswd}t|jtrd|jjdk	rd|jdkrQ|j|jj|_|t|j7}t|jttfr|jj	dk	r|j
dkr|j|jj	|_
|t|j
7}t|jtr|jdkr|j
|jj|_|t|jj7}|dkovt|jtpvt|jtra|jjra|jjpv|jpv|jS)Nr)rBr$Z	NodeEventrr7prepare_anchorrKrtrHrr8prepare_tagr9analyze_scalarrrrrr
rrxr{)rlengthr	r	r
rs$$zEmitter.check_simple_keycCss|jjdkrd|_dS|jdkrF|j|jj|_|jrf|j||jdd|_dS)NT)r$rr7rrX)r	indicatorr	r	r
rus		zEmitter.process_anchorcCs\|jj}t|jtr|jdkr<|j|_|jsR|dkr|jdkrq|jjds|jdkr|jjdrd|_dS|jjdr|dkrd}d|_n/|js|dkr|jjrd|_dS|dkrt	d|jdkr3|j
||_|jrO|j|jdd|_dS)Nrrrrztag is not specifiedT)r$rrBrtr:choose_scalar_styler1rlr8rrrX)rrr	r	r
rvs,	"		zEmitter.process_tagcCsE|jdkr'|j|jj|_|jjdksB|jrFdS|jjr|jjdr|jo|jjp|jj	r|j
r|jjs|j
r|jjrdS|jjr|jjdkr|j
r|jr|jj
r|jjS|jjs|jjdkrA|jjrA|jo9|jj	rAdSdS)N"rrz|>')r9rr$rr:r1rlr+r
rr'rrrr)rr	r	r
rs&	
zEmitter.choose_scalar_stylecCs|jdkr'|j|jj|_|jdkrE|j|_|j}|jdkrw|j|jj|n|jdkr|j	|jj|n`|jdkr|j
|jjn;|jdkr|j|jjn|j|jj|d|_d|_dS)Nrr>|)
r9rr$rr:rr+write_double_quotedrwrite_single_quotedwrite_folded
write_literalwrite_plain)rsplitr	r	r
rs 
	zEmitter.process_scalarcCs<|\}}|dkr.td||fd||fS)Nrzunsupported YAML version: %d.%dz%d.%d)r)rrWmajorminorr	r	r
rZszEmitter.prepare_versioncCs|std|ddks2|ddkrBtd|x|ddD]|}d|kopdknpd|kod	knpd
|kodknp|dksStd
||fqSW|S)Nztag handle must not be emptyrrrz*tag handle must start and end with '!': %r09AZazz-_z*invalid character %r in the tag handle: %rrGrG)r)rrhchr	r	r
r`!s TzEmitter.prepare_tag_handlecCs`|stdg}d}}|ddkr8d}x|t|kr/||}d|kondknsd|kodknsd	|kod
kns|dkr|d7}q;||kr|j||||d}}|jd}x%|D]}|jd
t|qWq;W||krS|j|||dj|S)Nztag prefix must not be emptyrrrrrrrrrz-;/?!:@&=+$,_.~*'()[]zutf-8z%%%02Xr)rrKr=encodeordjoin)rrichunksstartendrdatar	r	r
ra-s(

T

zEmitter.prepare_tag_prefixcCs|std|dkr"|Sd}|}t|jj}xd|D]\}|j|rJ|dkst|t|krJ|j|}|t|d}qJWg}d}}x
|t|kr||}	d|	kodknsQd|	kodknsQd|	ko(d	knsQ|	d
ksQ|	dkr^|dkr^|d7}q||kr|j||||d}}|	jd}
x%|
D]}	|jd
t|	qWqW||kr|j|||dj	|}|rd||fSd|SdS)Nztag must not be emptyrrrrrrrrz-;/?:@&=+$,_.~*'()[]rzutf-8z%%%02Xrz%s%sz!<%s>)
rr^r6r_
startswithrKr=rrr)rrrhsuffixprefixesrirrrrrZsuffix_textr	r	r
rDs@
$


T

zEmitter.prepare_tagcCs|stdx|D]|}d|ko6dknp|d|koRdknp|d|kondknp||dkstd	||fqW|S)
Nzanchor must not be emptyrrrrrrz-_z&invalid character %r in the anchor: %r)r)rrrr	r	r
rhs
TzEmitter.prepare_anchorcCs,|s=td|ddddddddddd	dd
dSd}d}d}d}d}d}d}d}	d}
d}|jds|jdrd}d}d}t|d
kp|d
dk}
d}d}d}xo|t|krN||}|dkr_|dkr d}d}|dkr>d}|
r>d}|dkr|
rd}d}nN|dkrqd}|dkrd}|
rd}|dkr|rd}d}|dkrd}|dkpd|kodknsU|dks+d|ko
dkns+d|ko&dknrO|dkrOd}|jsUd}nd}|dkr|dkrsd}|t|d
krd}|rd}
d}d}na|dkr|dkrd}|t|d
krd}	|rd}d}d}nd}d}|d
7}|dk}|d
t|kpH||d
dk}
qWd}d}d}d}d}|s|s|s|	rd}}|rd}|
rd}}}|s|rd}}}}|rd}}|rd}|rd}td|ddd|d|d|d|d	|d
|S) Nrr
TrFrrrrrz---z...ru
 	
…

rz#,[]{}&*!|>'"%@`z?:rz,?[]{}r#u	
…

r ~… u퟿uu�u)rrrKr2)rrZblock_indicatorsZflow_indicatorsZline_breaksZspecial_characters
leading_spaceZ
leading_breakZtrailing_spaceZtrailing_breakZbreak_spaceZspace_breakZpreceeded_by_whitespaceZfollowed_by_whitespaceZprevious_spaceZprevious_breakindexrZunicode_charactersrrrrrr	r	r
rrs
	(((				


zEmitter.analyze_scalarcCs#t|jdr|jjdS)Nflush)rQrr)rr	r	r
rmszEmitter.flush_streamcCs;|jr7|jjdr7|jjdj|jdS)Nzutf-16u)rrrwriter)rr	r	r
rRszEmitter.write_stream_startcCs|jdS)N)rm)rr	r	r
rfszEmitter.write_stream_endcCs|js|r|}n
d|}||_|jo8||_|jt|7_d|_|jrw|j|j}|jj|dS)NrF)	r.r/r-rKr0rrrr)rrZneed_whitespacer.r/rr	r	r
rXs	
			zEmitter.write_indicatorcCs|jpd}|jsA|j|ksA|j|krK|jrK|j|j|krd|_d||j}||_|jr|j|j}|jj|dS)NrTr)	r&r/r-r.write_line_breakrrrr)rr&rr	r	r
rY-s
			zEmitter.write_indentcCsn|dkr|j}d|_d|_|jd7_d|_|jrZ|j|j}|jj|dS)NTrr)	r5r.r/r,r-rrrr)rrr	r	r
r:s					zEmitter.write_line_breakcCsCd|}|jr%|j|j}|jj||jdS)Nz	%%YAML %s)rrrrr)rrgrr	r	r
r[Es

	zEmitter.write_version_directivecCsId||f}|jr+|j|j}|jj||jdS)Nz%%TAG %s %s)rrrrr)rrjrkrr	r	r
rbLs
	zEmitter.write_tag_directiveTc
Cs|jddd}d}d}}x|t|krd}|t|kr]||}|r'|dks{|dkr9|d|kr|j|jkr|r|dkr|t|kr|jnP|||}|jt|7_|jr|j|j}|jj||}n|r|dksE|dkr9||dkr_|j	x>|||D],}	|	dkr|j	qp|j	|	qpW|j|}n|dks|d	ks|dkr9||kr9|||}|jt|7_|jr#|j|j}|jj||}|dkrd
}|jd7_|jru|j|j}|jj||d}|dk	r|dk}|dk}|d7}q)W|jdddS)NrTFrrru	
…

ru
 
…

z''r)
rXrKr-r4rYrrrrr)
rtextrspacesbreaksrrrrbrr	r	r
rUsb

(
		


	$		
zEmitter.write_single_quotedrrb	trnvfrrer\rNr_u
Lu
PcCsH|jddd}}x|t|kr3d}|t|krQ||}|dks|dksd|kodknp|jod|kodknpd	|kod
knr||kr)|||}|jt|7_|jr|j|j}|jj||}|dk	r||jkrXd|j|}nN|dkrwd
t	|}n/|dkrdt	|}ndt	|}|jt|7_|jr|j|j}|jj||d}d|kot|dknr&|dks.||kr&|j|||j
kr&|r&|||d}||krt|}|jt|7_|jr|j|j}|jj||jd|_d|_
||dkr&d}|jt|7_|jr|j|j}|jj||d7}qW|jdddS)NrTru
"\…

rrru퟿uu�rÿz\x%02Xu￿z\u%04Xz\U%08XrF)rXrKr2r-rrrrESCAPE_REPLACEMENTSrr4rYr.r/)rrrrrrrr	r	r
rsf

			
> 	
			zEmitter.write_double_quotedcCs|d}|rx|ddkr/|t|j7}|d	dkrL|d7}n,t|dksn|d
dkrx|d7}|S)Nrru
 
…

ru	
…

rr+rG)strr3rK)rrhintsr	r	r
determine_block_hintss
"
zEmitter.determine_block_hintscCs|j|}|jd|d|dddkrBd|_|jd}d}d}d}}xG|t|krd}|t|kr||}|rb|dks|dkr|r|dk	r|dkr||d	kr|j|dk}x>|||D],}	|	d	kr2|jq|j|	qW|dk	rY|j|}n|r|dkr|d|kr|j|jkr|jnP|||}
|jt|
7_|jr|
j	|j}
|j
j|
|}n|dks|d
kr|||}
|jt|
7_|jrT|
j	|j}
|j
j|
|dkrz|j|}|dk	r|dk}|dk}|d7}qkWdS)NrTrrFru	
…

rru
 
…

rG)rrXr0rrKrYr-r4rrrr)rrrrrrrrrrrr	r	r
rsb	





	"
			
zEmitter.write_foldedc	Cs|j|}|jd|d|dddkrBd|_|jd}d}}xG|t|krd}|t|kr||}|r|dks|dkrx>|||D],}|dkr|jq|j|qW|dk	r|j|}no|dks)|dkr|||}|jrT|j|j}|jj	||dkrz|j|}|dk	r|dk}|d7}q_WdS)	NrTrrru	
…

rrG)
rrXr0rrKrYrrrr)	rrrrrrrrrr	r	r
rs>	




		
zEmitter.write_literalc
Cs|jrd|_|sdS|jskd}|jt|7_|jr[|j|j}|jj|d|_d|_	d}d}d}}x|t|krd}|t|kr||}|r||dkr||d|kr#|j|j
kr#|r#|jd|_d|_	nP|||}|jt|7_|jrc|j|j}|jj||}n|r|dkr|||dkr|jx>|||D],}	|	dkr|jq|j|	qW|jd|_d|_	|}nn|dks&|dkr||||}|jt|7_|jrf|j|j}|jj||}|dk	r|dk}|dk}|d7}qWdS)	NTrFrru	
…

ru
 
…

)
r(r0r.r-rKrrrrr/r4rYr)
rrrrrrrrrrr	r	r
r7sl						

(
			


				zEmitter.write_plain)@rrrr\rr<r@r>rDrPr!rTrSrVrnrerprsrwryrrr|rrrrrzrrr}rrrrrxr{rdrrurvrrrZr`rarrrrmrRrfrXrYrr[rbrrrrrrrr	r	r	r
rs	C	


$		
$


	766#N)__all__errorrr#rrrr	r	r	r
<module>	s


Back to Directory File Manager