Edit File: parser.cpython-36.pyc
3 <z�W�c������������������@���sN���d�dgZ�ddlmZ�ddlT�ddlT�ddlT�G�dd��de�ZG�dd���d��ZdS�)�Parser�ParserError����)�MarkedYAMLError)�*c���������������@���s���e�Zd�ZdS�)r���N)�__name__� __module__�__qualname__��r ���r ����/usr/lib64/python3.6/parser.pyr���E���s���c���������������@���s��e�Zd�Zddd�Zdd��Zdd��Zdd ��Zd d��Zdd ��Zdd��Z dd��Z dd��Zdd��Zdd��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!!c�������������C���s*���d�|�_�d�|�_i�|�_g�|�_g�|�_|�j|�_d�S�)N)� current_event�yaml_version�tag_handles�states�marks�parse_stream_start�state)�selfr ���r ���r ����__init__Q���s����zParser.__init__c�������������C���s���g�|�_�d�|�_d�S�)N)r���r���)r���r ���r ���r ����disposeY���s����zParser.disposec�������������G���sN���|�j�d�kr|�jr|�j��|�_�|�j�d�k rJ|s,dS�x|D�]}t|�j�|�r2dS�q2W�dS�)NTF)r���r���� isinstance)r����choicesZchoicer ���r ���r ����check_event^���s���� zParser.check_eventc�������������C���s ���|�j�d�kr|�jr|�j��|�_�|�j�S�)N)r���r���)r���r ���r ���r ���� peek_eventk���s���� zParser.peek_eventc�������������C���s*���|�j�d�kr|�jr|�j��|�_�|�j�}d�|�_�|S�)N)r���r���)r����valuer ���r ���r ���� get_eventr���s���� zParser.get_eventc�������������C���s(���|�j���}t|j|j|jd�}|�j|�_|S�)N)�encoding)� get_tokenZStreamStartEvent� start_mark�end_markr����parse_implicit_document_startr���)r����token�eventr ���r ���r ���r������s ���� zParser.parse_stream_startc�������������C���s\���|�j�ttt�sP|�j|�_|�j��}|j�}}t||dd�}|�j j |�j��|�j|�_ |S�|�j��S�d�S�)NF)�explicit)�check_token�DirectiveToken�DocumentStartToken�StreamEndToken�DEFAULT_TAGSr���� peek_tokenr����DocumentStartEventr����append�parse_document_end�parse_block_noder����parse_document_start)r���r!���r���r���r"���r ���r ���r ���r �������s���� z$Parser.parse_implicit_document_startc�������������C���s����x|�j�t�r|�j���qW�|�j�t�s�|�j��}|j}|�j��\}}|�j�t�sdtd�d�d|�j��j �|�j��j��|�j��}|j }t||d||d�}|�jj |�j��|�j|�_n4|�j��}t|j|j �}|�j�s�t�|�j�s�t�d�|�_|S�)Nz)expected '<document start>', but found %rT)r#����version�tags)r$����DocumentEndTokenr���r'���r)���r����process_directivesr&���r����idr���r*���r���r+���r,����parse_document_contentr���ZStreamEndEvent�AssertionErrorr���)r���r!���r���r/���r0���r���r"���r ���r ���r ���r.�������s.���� zParser.parse_document_startc�������������C���sL���|�j���}|j�}}d}|�jt�r2|�j��}|j}d}t|||d�}|�j|�_|S�)NFT)r#���) r)���r���r$���r1���r���r���ZDocumentEndEventr.���r���)r���r!���r���r���r#���r"���r ���r ���r ���r,�������s���� zParser.parse_document_endc�������������C���s<���|�j�tttt�r0|�j|�j��j�}|�jj ��|�_ |S�|�j��S�d�S�)N)r$���r%���r&���r1���r'����process_empty_scalarr)���r���r����popr���r-���)r���r"���r ���r ���r ���r4�������s���� zParser.parse_document_contentc�������������C���s���d�|�_�i�|�_x�|�jt�r�|�j��}|jdkrp|�j�d�k rDtd�d�d|j��|j\}}|dkrftd�d�d|j��|j|�_�q|jdkr|j\}}||�jkr�td�d�d|�|j��||�j|<�qW�|�jr�|�j�|�jj ��f}n |�j�d�f}x(|�j D�]}||�jkr�|�j |�|�j|<�q�W�|S�)NZYAMLzfound duplicate YAML directiver���z:found incompatible YAML document (version 1.* is required)ZTAGzduplicate tag handle %r)r ���r���r$���r%���r����namer���r���r����copyr(���)r���r!����major�minor�handle�prefixr����keyr ���r ���r ���r2�������s8���� zParser.process_directivesc�������������C���s���|�j�dd�S�)NT)�block)� parse_node)r���r ���r ���r ���r-�����s����zParser.parse_block_nodec�������������C���s���|�j���S�)N)r@���)r���r ���r ���r ����parse_flow_node��s����zParser.parse_flow_nodec�������������C���s���|�j�ddd�S�)NT)r?����indentless_sequence)r@���)r���r ���r ���r ����'parse_block_node_or_indentless_sequence��s����z.Parser.parse_block_node_or_indentless_sequenceFc���������� ���C���sR��|�j�t�r4|�j��}t|j|j|j�}|�jj��|�_ �nd�}d�}d��}�}} |�j�t �r�|�j��}|j}|j}|j}|�j�t�r�|�j��}|j} |j}|j}nF|�j�t�r�|�j��}|j�}} |j}|j}|�j�t �r�|�j��}|j}|j}|d�k �r&|\} }| d�k �r"| |�jk�rt d|d| �| ��|�j| �|�}n|}|d�k�r>|�j��j�}}d�}|d�k�pR|dk}|�r�|�j�t��r�|�j��j}t|||||�}|�j|�_ �n�|�j�t��r|�j��}|j}|j�r�|d�k�s�|dk�r�d }n|d�k�r�d}nd}t||||j|||jd�}|�jj��|�_ �nH|�j�t��r<|�j��j}t|||||dd�}|�j|�_ �n|�j�t��rp|�j��j}t|||||dd�}|�j|�_ n�|�r�|�j�t��r�|�j��j}t|||||dd�}|�j|�_ n�|�r�|�j�t��r�|�j��j}t|||||dd�}|�j|�_ nj|d�k �s�|d�k �rt|||dfd||�}|�jj��|�_ n2|�r(d } nd } |�j��}t d| �|d|j�|j��|S�)Nzwhile parsing a nodezfound undefined tag handle %rr���TF)�style)� flow_style��r?���Zflowzwhile parsing a %s nodez'expected the node content, but found %r)TF)FT)FF) r$���Z AliasTokenr���Z AliasEventr���r���r���r���r7���r���ZAnchorTokenZTagTokenr���r���r)����BlockEntryTokenZSequenceStartEvent�parse_indentless_sequence_entryZScalarTokenZplain�ScalarEventrD���ZFlowSequenceStartToken�parse_flow_sequence_first_entryZFlowMappingStartToken�MappingStartEvent�parse_flow_mapping_first_keyZBlockSequenceStartToken� parse_block_sequence_first_entryZBlockMappingStartToken�parse_block_mapping_first_keyr3���)r���r?���rB���r!���r"���Zanchor�tagr���r���Ztag_markr<����suffixZimplicitZnoder ���r ���r ���r@�����s����� zParser.parse_nodec�������������C���s���|�j���}|�jj|j��|�j��S�)N)r���r���r+���r����parse_block_sequence_entry)r���r!���r ���r ���r ���rM���x��s����z'Parser.parse_block_sequence_first_entryc�������������C���s����|�j�t�rH|�j��}|�j�tt�s4|�jj|�j��|�j��S�|�j|�_|�j |j �S�|�j�t�sv|�j��}td|�j d�d|j�|j��|�j��}t|j|j �}|�jj��|�_|�j j���|S�)Nz while parsing a block collectionr���z"expected <block end>, but found %r���)r$���rG���r���� BlockEndTokenr���r+���rQ���r-���r���r6���r���r)���r���r���r3���r����SequenceEndEventr7���)r���r!���r"���r ���r ���r ���rQ���}��s ���� z!Parser.parse_block_sequence_entryc�������������C���sr���|�j�t�rL|�j��}|�j�tttt�s8|�jj|�j��|�j ��S�|�j|�_ |�j|j�S�|�j ��}t|j|j�}|�jj��|�_ |S�)N)r$���rG���r����KeyToken� ValueTokenrS���r���r+���rH���r-���r���r6���r���r)���rT���r���r7���)r���r!���r"���r ���r ���r ���rH������s���� z&Parser.parse_indentless_sequence_entryc�������������C���s���|�j���}|�jj|j��|�j��S�)N)r���r���r+���r����parse_block_mapping_key)r���r!���r ���r ���r ���rN������s����z$Parser.parse_block_mapping_first_keyc�������������C���s����|�j�t�rJ|�j��}|�j�ttt�s6|�jj|�j��|�j��S�|�j|�_ |�j |j�S�|�j�t�sx|�j��}t d|�jd�d|j�|j��|�j��}t|j|j�}|�jj��|�_ |�jj���|S�)Nzwhile parsing a block mappingr���z"expected <block end>, but found %rrR���)r$���rU���r���rV���rS���r���r+����parse_block_mapping_valuerC���r���r6���r���r)���r���r���r3���r����MappingEndEventr7���)r���r!���r"���r ���r ���r ���rW������s ���� zParser.parse_block_mapping_keyc�������������C���sl���|�j�t�rL|�j��}|�j�ttt�s6|�jj|�j��|�j��S�|�j|�_ |�j |j�S�n|�j|�_ |�j��}|�j |j �S�d�S�)N)r$���rV���r���rU���rS���r���r+���rW���rC���r���r6���r���r)���r���)r���r!���r ���r ���r ���rX������s���� z Parser.parse_block_mapping_valuec�������������C���s"���|�j���}|�jj|j��|�jdd�S�)NT)�first)r���r���r+���r����parse_flow_sequence_entry)r���r!���r ���r ���r ���rJ������s����z&Parser.parse_flow_sequence_first_entryc�������������C���s����|�j�t�s�|sF|�j�t�r"|�j���n$|�j��}td|�jd�d|j�|j��|�j�t �r||�j��}t d�d�d|j|jdd�}|�j|�_ |S�|�j�t�s�|�jj|�j��|�j��S�|�j��}t|j|j�}|�jj��|�_ |�jj���|S�)Nzwhile parsing a flow sequencer���zexpected ',' or ']', but got %rT)rE���rR���)r$����FlowSequenceEndToken�FlowEntryTokenr���r)���r���r���r3���r���rU���rK���r����%parse_flow_sequence_entry_mapping_keyr���r���r+���r[���rA���rT���r7���)r���rZ���r!���r"���r ���r ���r ���r[������s,���� z Parser.parse_flow_sequence_entryc�������������C���sD���|�j���}|�jttt�s,|�jj|�j��|�j��S�|�j|�_ |�j |j�S�d�S�)N)r���r$���rV���r]���r\���r���r+����'parse_flow_sequence_entry_mapping_valuerA���r���r6���r���)r���r!���r ���r ���r ���r^������s����z,Parser.parse_flow_sequence_entry_mapping_keyc�������������C���sj���|�j�t�rJ|�j��}|�j�tt�s4|�jj|�j��|�j��S�|�j|�_ |�j |j�S�n|�j|�_ |�j��}|�j |j �S�d�S�)N)r$���rV���r���r]���r\���r���r+����%parse_flow_sequence_entry_mapping_endrA���r���r6���r���r)���r���)r���r!���r ���r ���r ���r_������s���� z.Parser.parse_flow_sequence_entry_mapping_valuec�������������C���s���|�j�|�_|�j��}t|j|j�S�)N)r[���r���r)���rY���r���)r���r!���r ���r ���r ���r`�����s����z,Parser.parse_flow_sequence_entry_mapping_endc�������������C���s"���|�j���}|�jj|j��|�jdd�S�)NT)rZ���)r���r���r+���r����parse_flow_mapping_key)r���r!���r ���r ���r ���rL�����s����z#Parser.parse_flow_mapping_first_keyc�������������C���s����|�j�t�s�|sF|�j�t�r"|�j���n$|�j��}td|�jd�d|j�|j��|�j�t �r�|�j��}|�j�t tt�s||�jj|�j ��|�j��S�|�j |�_|�j|j�S�n |�j�t�s�|�jj|�j��|�j��S�|�j��}t|j|j�}|�jj��|�_|�jj���|S�)Nzwhile parsing a flow mappingr���zexpected ',' or '}', but got %rrR���)r$����FlowMappingEndTokenr]���r���r)���r���r���r3���r���rU���rV���r���r+����parse_flow_mapping_valuerA���r���r6���r����parse_flow_mapping_empty_valuerY���r7���)r���rZ���r!���r"���r ���r ���r ���ra�����s.���� zParser.parse_flow_mapping_keyc�������������C���sj���|�j�t�rJ|�j��}|�j�tt�s4|�jj|�j��|�j��S�|�j|�_ |�j |j�S�n|�j|�_ |�j��}|�j |j �S�d�S�)N)r$���rV���r���r]���rb���r���r+���ra���rA���r���r6���r���r)���r���)r���r!���r ���r ���r ���rc���9��s���� zParser.parse_flow_mapping_valuec�������������C���s���|�j�|�_|�j|�j��j�S�)N)ra���r���r6���r)���r���)r���r ���r ���r ���rd���G��s����z%Parser.parse_flow_mapping_empty_valuec�������������C���s���t�d�d�dd||�S�)NTFrF���)TF)rI���)r���Zmarkr ���r ���r ���r6���K��s����zParser.process_empty_scalarN)FF)F)F)#r���r���r���r(���r���r���r���r���r���r���r ���r.���r,���r4���r2���r-���rA���rC���r@���rM���rQ���rH���rN���rW���rX���rJ���r[���r^���r_���r`���rL���ra���rc���rd���r6���r ���r ���r ���r ���r���H���sB��� / g N)�__all__�errorr����tokensZevents�scannerr���r���r ���r ���r ���r ����<module>>���s���