type{% if dtype.parobj == 'module' %}, {{ dtype.permission }}{% endif %}{% for attr in dtype.attributes%}, {{ attr }}{% endfor %}{% if dtype.extends %}, extends({{ dtype.extends }}){% endif %} :: {{ dtype.name }}{% if dtype.sequence%}
sequence{% endif %}
{% if dtype.inhergraph %}
{{ dtype.inhergraph }}
{% endif %}
{{ dtype.doc }}
{% if dtype.doc and not dtype.inherbygraph %}
{% endif %}
{% if dtype.inherbygraph %}
Inherited By
{{ dtype.inherbygraph }}
{% endif %}
{% if dtype.variables|length > 0 %}
Components
{{ macros.var_list(dtype.variables,permission=True) }}
{% endif %}
{% if dtype.constructor %}
Constructor
{% if dtype.constructor.obj == "interface" %}
{{ macros.interface(dtype.constructor) }}
{% elif dtype.constructor.obj == "subroutine" or dtype.constructor.obj == "function" %}
{% set obj = dtype.constructor %}
{{ macros.proc_line(obj) }}
{{ macros.proc_summary(obj,False) }}
{% endif %}
{% endif %}
{% if dtype.finalprocs|length > 0 %}
Finalization Procedures
{{ macros.final(dtype.finalprocs) }}
{% endif %}
{% if dtype.boundprocs|length > 0 %}
Type-Bound Procedures
{% for bp in dtype.boundprocs %}
{{ macros.bound_info(bp) }}
{% endfor %}
{% endif %}
{% if dtype.src %}
Source Code
{{ dtype.src }}
{% endif %}