# {{ language }} API Reference

{% for module in modules | sort(attribute='module_path') -%}
- [{{ module.module_path }}](#{{ module.module_path | lower | replace('/', '-') | replace('.', '-') | regex_replace('[^a-z0-9\\-_]', '') | regex_replace('-+', '-') | trim('-') }})
{% endfor %}

{% for module in modules | sort(attribute='module_path') -%}
## {{ module.module_path }}

{% if module.module_docstring -%}
{{ module.module_docstring | dedent }}

{% endif -%}

{# Functions #}
{% set valid_functions = module.functions | selectattr('simple_name') | reject('match', '^(anonymous|default)$', attribute='simple_name') | reject('match', '^.{256,}$', attribute='simple_name') | list -%}
{% if valid_functions -%}
### Functions

{% for func in valid_functions | sort(attribute='simple_name') -%}
#### {{ func.simple_name }}

```c
// Signature placeholder

```

{% if func.docstring -%}
{{ func.docstring | dedent }}

{% endif -%}
{% endfor -%}
{% endif -%}

{# Types #}
{% for typ in module.types | sort(attribute='simple_name') -%}
### {{ typ.simple_name }}

```c
{{ typ.kind }} {{ typ.simple_name }}

```

{% if typ.docstring -%}
{{ typ.docstring | dedent }}

{% endif -%}
{% endfor -%}
{% endfor -%}
