U
    ƽb                     @   sf   d dl Z d dlmZ G dd dZG dd deZG dd deZG d	d
 d
eZ	G dd deZ
dS )    N)_Fc                   @   s,   e Zd ZdZd
ddZdd Zddd	ZdS )Nodetagvalue
start_markend_markcommentanchorNc                 C   s(   || _ || _|| _|| _|| _|| _d S Nr   )selfr   r   r   r   r	   r
    r   5/tmp/pip-unpacked-wheel-ctuyz3qg/ruamel/yaml/nodes.py__init__   s    zNode.__init__c                 C   s$   | j }t|}td| jj| j|dS )Nz1{class_name!s}(tag={self_tag!r}, value={value!s}))
class_nameZself_tagr   )r   reprr   	__class____name__r   )r   r   r   r   r   __repr__   s    zNode.__repr__r   c                 C   s   t | jtrTtjdd| | jj| j	| j | j
rPtjdd| | j
 d S tjdd| | jj| j	 | j
rtjdd| | j
 | jD ]X}t |tr|D ]}||d  qqt |tr||d  qtjdt| qd S )Nz{}{}(tag={!r}, value={!r})
z  z    {}comment: {})
z{}{}(tag={!r})
   zNode value type? {}
)
isinstancer   strsysstdoutwriteformatr   r   r   r	   tupledumpr   type)r   indentvZv1r   r   r   r   .   s0       


z	Node.dump)NN)r   )r   
__module____qualname__	__slots__r   r   r   r   r   r   r   r      s   
	r   c                   @   s"   e Zd ZdZdZdZdddZdS )
ScalarNodez
    styles:
      ? -> set() ? key, no value
      " -> double quoted
      ' -> single quoted
      | -> literal style
      > -> folding style
    )styleZscalarNc              	   C   s"   t j| ||||||d || _d S )N)r	   r
   )r   r   r%   )r   r   r   r   r   r%   r	   r
   r   r   r   r   U   s    zScalarNode.__init__)NNNNN)r   r!   r"   __doc__r#   idr   r   r   r   r   r$   H   s   	         r$   c                   @   s   e Zd ZdZdddZdS )CollectionNode)
flow_styleNc                 C   s&   t j| |||||d || _|| _d S )N)r	   )r   r   r)   r
   r   r   r   r   r   r)   r	   r
   r   r   r   r   `   s    zCollectionNode.__init__)NNNNN)r   r!   r"   r#   r   r   r   r   r   r(   ]   s        r(   c                   @   s   e Zd ZdZdZdS )SequenceNoder   sequenceN)r   r!   r"   r#   r'   r   r   r   r   r+   p   s   r+   c                   @   s   e Zd ZdZdZdddZdS )MappingNode)mergemappingNc              
   C   s"   t | ||||||| d | _d S r   )r(   r   r.   r*   r   r   r   r   y   s           zMappingNode.__init__)NNNNN)r   r!   r"   r#   r'   r   r   r   r   r   r-   u   s        r-   )r   Zruamel.yaml.compatr   DictAnyTextr   r$   r(   r+   r-   r   r   r   r   <module>   s   =