alef 0.79.0

Opinionated polyglot binding generator for Rust libraries
Documentation
{% for variant in variants %}
{% if variant.has_payload %}
#[napi(namespace = "{{ enum_name }}", js_name = "{{ variant.variant_name }}")]
pub fn {{ variant.rust_name }}({{ content_field }}: {{ variant.payload_type }}) -> {{ binding_name }} {
    {{ binding_name }} {
        {{ tag_field }}: "{{ variant.wire_value }}".to_string(),
        {{ content_field }}: Some({{ content_field }}),
        {% if variant.needs_default_spread %}..Default::default()
        {% endif %}}
}
{% else %}
#[napi(namespace = "{{ enum_name }}", js_name = "{{ variant.variant_name }}")]
pub fn {{ variant.rust_name }}() -> {{ binding_name }} {
    {{ binding_name }} {
        {{ tag_field }}: "{{ variant.wire_value }}".to_string(),
        {% if variant.needs_default_spread %}..Default::default()
        {% endif %}}
}
{% endif %}
{% endfor %}