ó
öÀ„\c           @   sÉ   d  Z  d d l m Z d d l m Z d d l m Z d d l m Z e	 ru d d l
 m Z m Z d d l m Z n  e j e ƒ Z e	 r³ d d l
 m Z m Z d d l m Z n  d „  Z d	 „  Z d
 S(   sð   
    sphinx.ext.autosectionlabel
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Allow reference sections by :ref: role using its title.

    :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS.
    :license: BSD, see LICENSE for details.
iÿÿÿÿ(   t   nodes(   t   __(   t   logging(   t   clean_astext(   t   Anyt   Dict(   t   Sphinxc   
      C   s-  |  j  j d d } |  j  j d d } xþ | j t j ƒ D]ê } | d d } |  j  j } t | d d | d j ƒ  ƒ } |  j j	 r¡ t j
 | d | ƒ } n t j
 | ƒ } t | d ƒ }	 | | k rt j t d ƒ | |  j  j | | d ƒ d	 | ƒn  | | f | | <| | |	 f | | <q; Wd  S(
   Nt   stdt   labelst
   anonlabelst   idsi    t	   rawsourcet   :s(   duplicate label %s, other instance in %st   location(   t   envt
   domaindatat   traverseR    t   sectiont   docnamet   getattrt   astextt   configt    autosectionlabel_prefix_documentt   fully_normalize_nameR   t   loggert   warningR   t   doc2path(
   t   appt   documentR   R	   t   nodet   labelidR   t   ref_namet   namet   sectname(    (    s:   lib/python2.7/site-packages/sphinx/ext/autosectionlabel.pyt   register_sections_as_label    s      
c         C   s<   |  j  d t d ƒ |  j d t ƒ i d d 6t d 6t d 6S(   NR   R   s   doctree-readt   builtint   versiont   parallel_read_safet   parallel_write_safe(   t   add_config_valuet   Falset   connectR"   t   True(   R   (    (    s:   lib/python2.7/site-packages/sphinx/ext/autosectionlabel.pyt   setup7   s    N(   t   __doc__t   docutilsR    t   sphinx.localeR   t   sphinx.utilR   t   sphinx.util.nodesR   R(   t   typingR   R   t   sphinx.applicationR   t	   getLoggert   __name__R   R"   R+   (    (    (    s:   lib/python2.7/site-packages/sphinx/ext/autosectionlabel.pyt   <module>
   s   	