{% macro automodule(name) %} {% set m = autodoc.automodule(name) %} {% if m.docs %}

Introduction


{{ m.docs|markdown }}

{% endif %} {% for obj in m.members %} {% if obj.type=="function" %} {{ render_function(obj, name) }} {% elif obj.type=="class" %} {{ render_class(obj) }} {% endif %} {% endfor %} {% endmacro %} {% macro render_class(obj) %}

Class {{ obj.name }}

{% if obj.bases %}

Inherits from {{ ", ".join(obj.bases) }} {% endif %}

{{ obj.docs|markdown }}
{% for func in obj.members %} {{ render_function(func) }} {% endfor %}

{% endmacro %} {% macro render_function(obj, module_name) %} {% set full_name = ((module_name + "." if module_name else "" ) + obj.name).replace(".__init__", "") %} {% if obj.whitelisted %}

Public API
/api/method/{{ full_name }}

{% endif %}

{{ module_name.replace(".__init__", "") + "." if module_name else "" }}{{ obj.name }} ({{ print_args(obj.args) if obj.args else "" }})

{{ obj.docs|markdown }}

{% endmacro %} {% macro print_args(args) -%} {% for arg in args[0] -%} {%- set default_idx = args[3]|len - args[0]|len + (loop.index - 1) if args[3] else -1 -%} {{ arg }}{% if default_idx >= 0 %}={{ args[3][default_idx] }}{% endif %}{% if not loop.last %}, {% endif %} {%- endfor %} {%- endmacro %} {% macro version(name) %} Version {{ autodoc.get_version(name) }} {% endmacro %} {% macro source_link(app, file_path, tree=False) %} Source {% endmacro %} {% macro doctype_link(app, doctype) %} {% set module = frappe.db.get_value("DocType", doctype, "module") %} {% if doctype and module %} {{ doctype }} {% endif %} {% endmacro %}