I can use macro syntax in Jinja2:
{% macro myMacro(someData) %}
....
{%endmacro %}
{% macro myMacroRecursive(someData) %}
....
{{- myMacroRecursive(someData) -}} <!-- Recursive macro calling -->
...
{%endmacro %}
{{ myMacro(myData) }} <!-- macro calling -->