o
                         @   sv   d dl mZ d dlZddlm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G dd deZdS )    )print_functionN   )string_typesF)DictAnyTextc                   @   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   :/tmp/google-cloud-sdk/lib/third_party/ruamel/yaml/nodes.py__init__   s   
zNode.__init__c                 C   s"   | j }t|}d| jj| j|f S )Nz%s(tag=%r, value=%s))r   repr	__class____name__r
   )r   r   r   r   r   __repr__   s   zNode.__repr__r   c                 C   s   t | jtr*tjdd| | jj| j	| j | j
r(tjdd| | j
 d S tjdd| | jj| j	 | j
rJtjdd| | j
 | jD ],}t |tra|D ]	}||d  qVqMt |trn||d  qMtjdt| qMd S )Nz{}{}(tag={!r}, value={!r})
z  z    {}comment: {})
z{}{}(tag={!r})
r   zNode value type? {}
)
isinstancer   r   sysstdoutwriteformatr   r   r
   r   tupledumpr   type)r   indentvv1r   r   r   r   *   s.   


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
    )style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   Q   s   
zScalarNode.__init__NNNNN)r   r$   r%   __doc__r&   idr   r   r   r   r   r'   D   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__r*   )r   r$   r%   r&   r   r   r   r   r   r-   Y   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   r0   l   s    r0   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   r3   r/   r   r   r   r   u   s   
zMappingNode.__init__r*   )r   r$   r%   r&   r,   r   r   r   r   r   r2   q   s    r2   )
__future__r   r   compatr   typingr   r   r   objectr   r'   r-   r0   r2   r   r   r   r   <module>   s   8