protify 0.1.4

A Rust-first protobuf framework to generate packages from rust code, with validation included
Documentation
{% import "render_macros.j2" as macros %}

{{ edition }};

package {{+ package }};

{%~ set sorted_imports = imports.as_sorted_vec() ~%}

{% for import in sorted_imports ~%}
import "{{ import }}";
{% endfor ~%}

{%~ for option in options +%}
option {{+ option.name +}} = {{+ option.value }};
{% endfor +%}

{%~ for extension in extensions ~%}
extend {{+ extension.target +}} {
  {% for field in extension.fields ~%}
  {%+ call macros::render_field(field, package, 2) %}{% endcall %}
  {% endfor ~%}
}
{%~ endfor %}

{%~ for enum_ in enums ~%}
{{~ enum_ ~}}
{%~ endfor %}

{%~ for msg in messages ~%}
{{~ msg ~}}
{%~ endfor %}

{%~ for service in services ~%}
{{~ service ~}}
{%~ endfor %}