
    c                         d dl mZ d dlmZ d dlmZmZmZmZm	Z	m
Z
  G d dej                        Zd Z eej                        d        Zy)	    )monkeypatch)autodoc)ViewListOptionsAutodocReporternodesassemble_option_dictnested_parse_with_titlesc                   *    e Zd ZdZd Zd ZddZd Zy)DocstringOnlyModuleDocumenter	docstringc                      y N )selfs    ;/usr/lib/python3/dist-packages/logilab/common/sphinx_ext.pyformat_signaturez.DocstringOnlyModuleDocumenter.format_signature"           c                      y r   r   )r   sigs     r   add_directive_headerz2DocstringOnlyModuleDocumenter.add_directive_header%   r   r   c                      y r   r   )r   all_memberss     r   document_membersz.DocstringOnlyModuleDocumenter.document_members(   r   r   c                 ,    ||||gz   fS |xs d|z   g fS )N r   )r   modnameparentspathbases        r   resolve_namez*DocstringOnlyModuleDocumenter.resolve_name+   s.    Gtf,,,
d"B&&r   N)F)__name__
__module____qualname__objtyper   r   r   r"   r   r   r   r   r      s    G'r   r   c                 .    | j                  t               y r   )add_autodocumenterr   )apps    r   setupr*   4   s    89r   c                 @   t               | _        | j                  j                  j                  | _        | j                  j                  j
                  j                  | _        g | _        t               | _	        | j                  dd  }| j                  |   }t        t        | j                  j                         |j                               | _         || | j$                  d         }|j'                  | j(                         | j                  s| j                  S | j                  D ]  }| j                  j+                  |        | j                  j,                  j                  }t/        | j                  | j                  j,                  j                        | j                  j,                  _        | j                  dv rQt1        j2                         }| j                  j                  |_        t5        | j                  | j                  |       nVt1        j6                         }| j                  j                  |_        | j                  j9                  | j                  d|       || j                  j,                  _        | j                  |j:                  z   S )N   r   )more_content)
automoduleautodocstring)setfilename_setstatedocumentreportersettingsenvwarningsr   resultname	_registryr   r	   optionsitemsoption_specgenopt	argumentsgeneratecontentnote_dependencymemor   r   sectionr
   	paragraphnested_parsechildren)r   r&   	doc_class
documenterfnold_reporternodes          r   runrM   8   s   DJJ''00DMzz""++//DHDM*DK iimGw'I.t||/A/A/CYEZEZ[\DK4!23JT\\2;;}}  %  $%
 ::??++L.t{{DJJOO<T<TUDJJOOyy33}}

++ T[[$? 

++

Q5+DJJOO==4==((r   N)logilab.common.decoratorsr   
sphinx.extr   sphinx.ext.autodocr   r   r   r   r	   r
   ModuleDocumenterr   r*   AutoDirectiverM   r   r   r   <module>rS      sM   $ 2  'G$<$< '*: W""#%) $%)r   