³ò
nBtKc           @   s`   d  d g Z  d d k l Z d d k Td d k Td e f d „  ƒ  YZ d  e f d „  ƒ  YZ d S(   t
   Serializert   SerializerErroriÿÿÿÿ(   t	   YAMLError(   t   *c           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    s%   /p/zhu/06/nlp/nltk/yaml/serializer.pyR      s   c           B   s\   e  Z d  Z e e e e e d „ Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 RS(   u   id%03dc         C   sU   | |  _  | |  _ | |  _ | |  _ | |  _ h  |  _ h  |  _ d |  _ d  |  _	 d  S(   Ni    (
   t   use_encodingt   use_explicit_startt   use_explicit_endt   use_versiont   use_tagst   serialized_nodest   anchorst   last_anchor_idt   Nonet   closed(   t   selft   encodingt   explicit_startt   explicit_endt   versiont   tags(    (    s%   /p/zhu/06/nlp/nltk/yaml/serializer.pyt   __init__   s    								c         C   s`   |  i  d  j o& |  i t d |  i ƒ ƒ t |  _  n' |  i  o t d ƒ ‚ n t d ƒ ‚ d  S(   NR   s   serializer is closeds   serializer is already opened(   R   R   t   emitt   StreamStartEventR   t   FalseR   (   R   (    (    s%   /p/zhu/06/nlp/nltk/yaml/serializer.pyt   open   s    
c         C   sK   |  i  d  j o t d ƒ ‚ n( |  i  p |  i t ƒ  ƒ t |  _  n d  S(   Ns   serializer is not opened(   R   R   R   R   t   StreamEndEventt   True(   R   (    (    s%   /p/zhu/06/nlp/nltk/yaml/serializer.pyt   close$   s
    
c         C   s½   |  i  d  j o t d ƒ ‚ n |  i  o t d ƒ ‚ n |  i t d |  i d |  i d |  i ƒ ƒ |  i | ƒ |  i	 | d  d  ƒ |  i t
 d |  i ƒ ƒ h  |  _ h  |  _ d |  _ d  S(   Ns   serializer is not openeds   serializer is closedt   explicitR   R   i    (   R   R   R   R   t   DocumentStartEventR   R	   R
   t   anchor_nodet   serialize_nodet   DocumentEndEventR   R   R   t   last_alias_id(   R   t   node(    (    s%   /p/zhu/06/nlp/nltk/yaml/serializer.pyt	   serialize.   s    
		c         C   sÐ   | |  i  j o2 |  i  | d  j o |  i | ƒ |  i  | <qÌ n‹ d  |  i  | <t | t ƒ o% xj | i D] } |  i | ƒ qi WnI t | t ƒ o8 x5 | i D]& \ } } |  i | ƒ |  i | ƒ qž Wn d  S(   N(   R   R   t   generate_anchort
   isinstancet   SequenceNodet   valueR    t   MappingNode(   R   R$   t   itemt   keyR)   (    (    s%   /p/zhu/06/nlp/nltk/yaml/serializer.pyR    <   s    
 
 c         C   s   |  i  d 7_  |  i |  i  S(   Ni   (   R   t   ANCHOR_TEMPLATE(   R   R$   (    (    s%   /p/zhu/06/nlp/nltk/yaml/serializer.pyR&   J   s    c         C   sC  |  i  | } | |  i j o |  i t | ƒ ƒ nt |  i | <|  i | | ƒ t | t ƒ o‰ |  i t | i	 t t
 f ƒ } |  i t | i	 t
 t f ƒ } | i | j | i | j f } |  i t | | i | | i	 d | i ƒƒ nLt | t ƒ o‘ | i |  i t | i	 t ƒ j } |  i t | | i | d | i ƒƒ d } x. | i	 D]# } |  i | | | ƒ | d 7} qPW|  i t ƒ  ƒ n« t | t ƒ oš | i |  i t | i	 t ƒ j } |  i t | | i | d | i ƒƒ x= | i	 D]2 \ }	 }
 |  i |	 | d  ƒ |  i |
 | |	 ƒ qëW|  i t ƒ  ƒ n |  i ƒ  d  S(   Nt   stylet
   flow_stylei    i   (   R   R   R   t
   AliasEventR   t   descend_resolverR'   t
   ScalarNodet   resolveR)   R   t   tagt   ScalarEventR.   R(   t   SequenceStartEventR/   R!   t   SequenceEndEventR*   t   MappingStartEventR   t   MappingEndEventt   ascend_resolver(   R   R$   t   parentt   indext   aliast   detected_tagt   default_tagt   implicitR+   R,   R)   (    (    s%   /p/zhu/06/nlp/nltk/yaml/serializer.pyR!   N   sB    
 
 (   R   R   R-   R   R   R   R   R%   R    R&   R!   (    (    (    s%   /p/zhu/06/nlp/nltk/yaml/serializer.pyR       s   			
			N(   t   __all__t   errorR   t   eventst   nodesR   t   objectR    (    (    (    s%   /p/zhu/06/nlp/nltk/yaml/serializer.pys   <module>   s
   

