{# Template for api dox in front of class method declaration #}
{% load kdev_filters %}
{% with method.arguments as arguments %}
    {# standard four spaces indentation to match context #}
    /**
    {% if method.isConstructor %}
        {% if not arguments %}
     * Default constructor
        {% else %}
            {% with arguments|first as argFirst %}
            {% if arguments|length == 1 and argFirst.type == method.name|arg_type %}
     * Copy constructor
            {% else %}
     * Constructor
            {% endif %}
            {% endwith %}
        {% endif %}
    {% elif method.isDestructor %}
     * Destructor
    {% elif "operator=" == method.name %}
     * Assignment operator
    {% else %}
     * @todo write docs
    {% endif %}
    {# and > or, so we go here if arguments or (returntype and not constructor/destructor) #}
    {% if arguments  or  method.returnType and not method.isConstructor and not method.isDestructor %}
     *
    {% endif %}
    {% for argument in arguments %}
     * @param {{ argument.name }} TODO
    {% endfor %}
    {% if method.returnType and not method.isConstructor and not method.isDestructor %}
     * @return TODO
    {% endif %}
     */
{% endwith %}
