blob: 82ecd9e49f81d3128684819af5ae289625e9e82d [file] [log] [blame]
{% from 'fields/field.tmpl' import encode, decode, const_ref, nonconst_ref %}
{% macro decl_initial_method(field) -%}
inline static {{field.type_name}} {{field.initial_method_name}}() {
return {{field.default_value}};
}
{%- endmacro %}
{% macro decl_getter_method(field) -%}
{{const_ref(field)}} {{field.getter_method_name}}() const {
return {{decode(field, field.name)}};
}
{%- endmacro %}
{% macro decl_setter_method(field) -%}
void {{field.setter_method_name}}({{const_ref(field)}} v) {
{{field.name}} = {{encode(field, "v")}};
}
{%- endmacro %}
{% macro decl_resetter_method(field) -%}
inline void {{field.resetter_method_name}}() {
{{field.name}} = {{encode(field, field.default_value)}};
}
{%- endmacro %}
{% macro decl_mutable_method(field) -%}
{{nonconst_ref(field)}} {{field.mutable_method_name}}() const {
return {{decode(field, field.name)}};
}
{%- endmacro %}
{% macro decl_internal_getter_method(field) -%}
{{const_ref(field)}} {{field.internal_getter_method_name}}() const {
return {{decode(field, field.name)}};
}
{%- endmacro %}
{% macro decl_internal_setter_method(field) -%}
void {{field.internal_setter_method_name}}({{const_ref(field)}} v) {
{{field.name}} = {{encode(field, "v")}};
}
{%- endmacro %}