{ {% if macro.vars %} const {{ macro.render_struct() }} {{ macro.name }}_args = { {% for var in macro.vars %} #line {{ var.linenr }} .{{ var.name }} = {{ var.expr }}, {% endfor %} }; #line {{ macro.linenr }} {% endif %} size_t {{ macro.name }}_fn(void *, pl_str *, const uint8_t *); {% if macro.vars %} pl_str_builder_append(sh->buffers[{{ macro.buf }}], {{ macro.name }}_fn, &{{ macro.name }}_args, sizeof({{ macro.name }}_args)); {% else %} pl_str_builder_append(sh->buffers[{{ macro.buf }}], {{ macro.name }}_fn, NULL, 0); {% endif %} }