{{ fullname | escape | underline}}

.. automodule:: {{ fullname }}
   {% block attributes %}
   {%- if attributes %}
   .. rubric:: {{ _('Module Attributes') }}

   .. autosummary::
   {% for item in attributes %}
      {{ item }}
   {%- endfor %}
   {% endif %}
   {%- endblock %}

   {%- block functions %}
   {%- if functions %}
   .. rubric:: {{ _('Functions') }}

   .. autosummary::
   {% for item in functions %}
      {{ item }}
   {%- endfor %}

   {% endif %}
   {%- endblock %}

   {%- block classes %}
   {%- if classes %}
   .. rubric:: {{ _('Classes') }}

   .. autosummary::
      :toctree:
      :template: class.rst
   {% for item in classes %}
      {{ item }}
   {%- endfor %}
   {% endif %}
   {%- endblock %}

   {%- block exceptions %}
   {%- if exceptions %}
   .. rubric:: {{ _('Exceptions') }}

   .. autosummary::
   {% for item in exceptions %}
      {{ item }}
   {%- endfor %}
   {% endif %}
   {%- endblock %}


{%- block modules %}
{%- if modules %}
.. rubric:: Modules

.. autosummary::
   :toctree:
   :template: module.rst
   :recursive:
{% for item in modules %}
   {{ item }}
{%- endfor %}
{% endif %}
{%- endblock %}


{%- if attributes %}
.. rubric:: {{ _('Module Attributes') }}
{% for item in attributes %}
.. autodata:: {{ item }}
{%- endfor %}
{% endif %}

{%- if functions %}
.. rubric:: {{ _('Module Functions') }}
{% for item in functions %}
.. autofunction:: {{ item }}
{%- endfor %}
{% endif %}

{%- if exceptions %}
.. rubric:: {{ _('Module Exceptions') }}
{% for item in exceptions %}
.. autoexception:: {{ item }}
{%- endfor %}
{% endif %}
