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



5[c@sgddgZddlmZddlTddlTddlTGdddeZGdddZdS)ParserParserError)MarkedYAMLError)*c@seZdZdS)rN)__name__
__module____qualname__r	r	
/parser.pyrEsc@seZdZddddiZddZddZdd	Zd
dZdd
ZddZ	ddZ
ddZddZddZ
ddZddZddZddZd d d!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd d1d2Zd3d4Zd5d6Zd7d8Zd9d:Zd d;d<Zd=d>Z d?d@Z!dAdBZ"dCS)Dr!z!!ztag:yaml.org,2002:cCs=d|_d|_i|_g|_g|_|j|_dS)N)
current_eventyaml_versiontag_handlesstatesmarksparse_stream_startstate)selfr	r	r
__init__Qs					zParser.__init__cCsg|_d|_dS)N)rr)rr	r	r
disposeYs	zParser.disposecGsk|jdkr'|jr'|j|_|jdk	rg|s@dSx$|D]}t|j|rGdSqGWdS)NTF)rr
isinstance)rchoiceschoicer	r	r
check_event^s	
zParser.check_eventcCs.|jdkr'|jr'|j|_|jS)N)rr)rr	r	r

peek_eventks	zParser.peek_eventcCs=|jdkr'|jr'|j|_|j}d|_|S)N)rr)rvaluer	r	r
	get_eventrs			zParser.get_eventcCs:|j}t|j|jd|j}|j|_|S)Nencoding)	get_tokenZStreamStartEvent
start_markend_markrparse_implicit_document_startr)rtokeneventr	r	r
rs
zParser.parse_stream_startcCs|jtttsr|j|_|j}|j}}t||dd}|j	j
|j|j|_
|S|jSdS)NexplicitF)check_tokenDirectiveTokenDocumentStartTokenStreamEndTokenDEFAULT_TAGSr
peek_tokenrDocumentStartEventrappendparse_document_endparse_block_noderparse_document_start)rr"rr r#r	r	r
r!s	
	z$Parser.parse_implicit_document_startc	Cs6x|jtr|jqW|jts|j}|j}|j\}}|jtstddd|jj	|jj|j}|j
}t||ddd|d|}|jj
|j|j|_nJ|j}t|j|j
}|jst|js)td|_|S)Nz)expected '<document start>', but found %rr$Tversiontags)r%DocumentEndTokenrr(r*rprocess_directivesr'ridr r+rr,r-parse_document_contentrZStreamEndEventAssertionErrorr)rr"rr0r1r r#r	r	r
r/s.		
		zParser.parse_document_startcCsn|j}|j}}d}|jtrI|j}|j}d}t||d|}|j|_|S)NFTr$)	r*rr%r2rr ZDocumentEndEventr/r)rr"rr r$r#r	r	r
r-s
		zParser.parse_document_endcCsT|jttttrF|j|jj}|jj	|_
|S|jSdS)N)r%r&r'r2r(process_empty_scalarr*rrpoprr.)rr#r	r	r
r5s	zParser.parse_document_contentcCspd|_i|_x|jtr|j}|jdkr|jdk	rftddd|j|j\}}|dkrtddd|j|j|_q|jdkr|j\}}||jkrtddd||j||j|<qW|jr&|j|jj	f}n|jdf}x4|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&rnamerrrcopyr))rr"majorminorhandleprefixrkeyr	r	r
r3s8						zParser.process_directivescCs|jddS)NblockT)
parse_node)rr	r	r
r.szParser.parse_block_nodecCs
|jS)N)rA)rr	r	r
parse_flow_nodeszParser.parse_flow_nodecCs|jddddS)Nr@Tindentless_sequence)rA)rr	r	r
'parse_block_node_or_indentless_sequencesz.Parser.parse_block_node_or_indentless_sequenceFc	Cs|jtrK|j}t|j|j|j}|jj|_	nMd}d}d}}}	|jt
r|j}|j}|j}|j}|jtr;|j}|j}	|j}|j}ng|jtr;|j}|j}}	|j}|j}|jt
r;|j}|j}|j}|dk	r|\}
}|
dk	r|
|jkrt
d|d|
|	|j|
|}n|}|dkr|jj}}d}|dkp|dk}|r)|jtr)|jj}t|||||}|j|_	no|jtr|j}|j}|jrb|dksn|dkrwd
}n|dkrd}nd}t||||j||d|j}|jj|_	n|jtr|jj}t|||||dd}|j|_	n|jtrd|jj}t|||||dd}|j|_	n4|r|jtr|jj}t|||||dd}|j|_	n|r|jtr|jj}t|||||dd}|j|_	n|dk	s|dk	rTt|||dfd||}|jj|_	nD|rcd	}
nd
}
|j}t
d|
|d|j|j|S)Nzwhile parsing a nodezfound undefined tag handle %rrTFstyle
flow_styler@Zflowzwhile parsing a %s nodez'expected the node content, but found %r)TF)FT)FF) r%Z
AliasTokenrZ
AliasEventrrr rr8rZAnchorTokenZTagTokenrrr*BlockEntryTokenZSequenceStartEventparse_indentless_sequence_entryZScalarTokenZplainScalarEventrEZFlowSequenceStartTokenparse_flow_sequence_first_entryZFlowMappingStartTokenMappingStartEventparse_flow_mapping_first_keyZBlockSequenceStartToken parse_block_sequence_first_entryZBlockMappingStartTokenparse_block_mapping_first_keyr4)rr@rCr"r#Zanchortagrr Ztag_markr=suffixZimplicitZnoder	r	r
rAs					
							!			

zParser.parse_nodecCs)|j}|jj|j|jS)N)rrr,rparse_block_sequence_entry)rr"r	r	r
rNxsz'Parser.parse_block_sequence_first_entrycCs|jtrf|j}|jttsJ|jj|j|jS|j|_|j	|j
S|jts|j}td|j
dd|j|j|j}t|j|j
}|jj|_|j
j|S)Nz while parsing a block collectionrz"expected <block end>, but found %r)r%rHr
BlockEndTokenrr,rRr.rr7r r*rrr4rSequenceEndEventr8)rr"r#r	r	r
rR}s 

z!Parser.parse_block_sequence_entrycCs|jtrl|j}|jttttsP|jj|j|j	S|j|_
|j|jS|j
}t|j|j}|jj|_
|S)N)r%rHrKeyToken
ValueTokenrTrr,rIr.rr7r r*rUrr8)rr"r#r	r	r
rIs	
z&Parser.parse_indentless_sequence_entrycCs)|j}|jj|j|jS)N)rrr,rparse_block_mapping_key)rr"r	r	r
rOsz$Parser.parse_block_mapping_first_keycCs|jtri|j}|jtttsM|jj|j|jS|j|_	|j
|jS|jts|j}t
d|jdd|j|j|j}t|j|j}|jj|_	|jj|S)Nzwhile parsing a block mappingrz"expected <block end>, but found %rrS)r%rVrrWrTrr,parse_block_mapping_valuerDrr7r r*rrr4rMappingEndEventr8)rr"r#r	r	r
rXs 

zParser.parse_block_mapping_keycCs|jtrl|j}|jtttsM|jj|j|jS|j|_	|j
|jSn(|j|_	|j}|j
|j
SdS)N)r%rWrrVrTrr,rXrDrr7r r*r)rr"r	r	r
rYs
z Parser.parse_block_mapping_valuecCs/|j}|jj|j|jddS)NfirstT)rrr,rparse_flow_sequence_entry)rr"r	r	r
rKsz&Parser.parse_flow_sequence_first_entrycCs"|jts|sc|jtr1|jn2|j}td|jdd|j|j|jt	r|j}t
ddd|j|jdd}|j|_
|S|jts|jj|j|jS|j}t|j|j}|jj|_
|jj|S)Nzwhile parsing a flow sequencerzexpected ',' or ']', but got %rTrFrS)r%FlowSequenceEndTokenFlowEntryTokenrr*rrr4rrVrLr %parse_flow_sequence_entry_mapping_keyrrr,r\rBrUr8)rr[r"r#r	r	r
r\s,
	

z Parser.parse_flow_sequence_entrycCs^|j}|jttts>|jj|j|jS|j|_	|j
|jSdS)N)rr%rWr^r]rr,'parse_flow_sequence_entry_mapping_valuerBrr7r )rr"r	r	r
r_s	
z,Parser.parse_flow_sequence_entry_mapping_keycCs|jtri|j}|jttsJ|jj|j|jS|j|_	|j
|jSn(|j|_	|j}|j
|j
SdS)N)r%rWrr^r]rr,%parse_flow_sequence_entry_mapping_endrBrr7r r*r)rr"r	r	r
r`s
z.Parser.parse_flow_sequence_entry_mapping_valuecCs+|j|_|j}t|j|jS)N)r\rr*rZr)rr"r	r	r
rasz,Parser.parse_flow_sequence_entry_mapping_endcCs/|j}|jj|j|jddS)Nr[T)rrr,rparse_flow_mapping_key)rr"r	r	r
rMsz#Parser.parse_flow_mapping_first_keycCs?|jts|sc|jtr1|jn2|j}td|jdd|j|j|jt	r|j}|jt
tts|jj|j
|jS|j
|_|j|jSn,|jts|jj|j|jS|j}t|j|j}|jj|_|jj|S)Nzwhile parsing a flow mappingrzexpected ',' or '}', but got %rrS)r%FlowMappingEndTokenr^rr*rrr4rrVrWrr,parse_flow_mapping_valuerBrr7r parse_flow_mapping_empty_valuerZr8)rr[r"r#r	r	r
rbs.
	


zParser.parse_flow_mapping_keycCs|jtri|j}|jttsJ|jj|j|jS|j|_	|j
|jSn(|j|_	|j}|j
|j
SdS)N)r%rWrr^rcrr,rbrBrr7r r*r)rr"r	r	r
rd9s
zParser.parse_flow_mapping_valuecCs"|j|_|j|jjS)N)rbrr7r*r)rr	r	r
reGsz%Parser.parse_flow_mapping_empty_valuecCstdddd||S)NTFrG)TF)rJ)rmarkr	r	r
r7KszParser.process_empty_scalarN)#rrrr)rrrrrrr!r/r-r5r3r.rBrDrArNrRrIrOrXrYrKr\r_r`rarMrbrdrer7r	r	r	r
rHsB

	/g
N)__all__errorrtokenseventsscannerrrr	r	r	r
<module>>s



Back to Directory File Manager