ó
šOc           @   sh   d  Z  d Z d d l m Z m Z m Z d d l m Z d e f d „  ƒ  YZ d e f d „  ƒ  YZ	 d	 S(
   sõ   
Auxiliary transforms mainly to be used by Writer components.

This module is called "writer_aux" because otherwise there would be
conflicting imports like this one::

    from docutils import writers
    from docutils.transforms import writers
t   reStructuredTextiÿÿÿÿ(   t   nodest   utilst	   languages(   t	   Transformt   Compoundc           B   s   e  Z d  Z d Z d „  Z RS(   s  
    Flatten all compound paragraphs.  For example, transform ::

        <compound>
            <paragraph>
            <literal_block>
            <paragraph>

    into ::

        <paragraph>
        <literal_block classes="continued">
        <paragraph classes="continued">
    iŽ  c         C   s~   xw |  j  j t j ƒ D]` } t } xC | D]; } | rS t | t j ƒ sd t } qd q) | d j d ƒ q) W| j	 | ƒ q Wd  S(   Nt   classest	   continued(
   t   documentt   traverseR   t   compoundt   Truet
   isinstancet	   Invisiblet   Falset   appendt   replace_self(   t   selfR
   t   first_childt   child(    (    sB   /usr/lib/python2.7/dist-packages/docutils/transforms/writer_aux.pyt   apply(   s    (   t   __name__t
   __module__t   __doc__t   default_priorityR   (    (    (    sB   /usr/lib/python2.7/dist-packages/docutils/transforms/writer_aux.pyR      s   t   Admonitionsc           B   s   e  Z d  Z d Z d „  Z RS(   sZ  
    Transform specific admonitions, like this:

        <note>
            <paragraph>
                 Note contents ...

    into generic admonitions, like this::

        <admonition classes="note">
            <title>
                Note
            <paragraph>
                Note contents ...

    The admonition title is localized.
    i˜  c         C   sË   t  j |  j j j |  j j ƒ } x£ |  j j t j ƒ D]Œ } | j	 j
 } | d j | ƒ t | t j ƒ s7 t j | j | j | j Ž } t j d | j | ƒ } | j d | ƒ | j | ƒ q7 q7 Wd  S(   NR   t    i    (   R   t   get_languageR   t   settingst   language_codet   reporterR	   R   t
   Admonitiont	   __class__R   R   R   t
   admonitiont	   rawsourcet   childrent
   attributest   titlet   labelst   insertR   (   R   t   languaget   nodet	   node_nameR!   R%   (    (    sB   /usr/lib/python2.7/dist-packages/docutils/transforms/writer_aux.pyR   K   s    (   R   R   R   R   R   (    (    (    sB   /usr/lib/python2.7/dist-packages/docutils/transforms/writer_aux.pyR   5   s   N(
   R   t   __docformat__t   docutilsR   R   R   t   docutils.transformsR   R   R   (    (    (    sB   /usr/lib/python2.7/dist-packages/docutils/transforms/writer_aux.pyt   <module>   s
    