Sync edgetx to Gitea
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
// generated by generate_yaml.py
|
||||
|
||||
//
|
||||
// Enums first
|
||||
//
|
||||
|
||||
{% for enum in root.get_enums() %}
|
||||
const struct YamlIdStr {{ enum.name }}[] = {
|
||||
{% for elmt in enum.get_elmts() %}
|
||||
{ {{ elmt.value }}, "{{ max_len(elmt.name) }}" },
|
||||
{% endfor %}
|
||||
{ 0, NULL }
|
||||
};
|
||||
{% endfor %}
|
||||
|
||||
//
|
||||
// Structs last
|
||||
//
|
||||
|
||||
{% for struct in root.get_structs() %}
|
||||
{% if struct.name.startswith('union_') %}
|
||||
static const struct YamlNode {{ struct.name }}_elmts[] = {
|
||||
{% else %}
|
||||
static const struct YamlNode {{ struct.name }}[] = {
|
||||
{% if struct.use_idx %}
|
||||
YAML_IDX,
|
||||
{% endif%}
|
||||
{% endif %}
|
||||
{% for elmt in struct.get_elmts() %}
|
||||
{% if elmt.skip %}
|
||||
YAML_PADDING( {{ elmt.bits }} ),
|
||||
{% elif elmt.type == 'string' %}
|
||||
YAML_STRING("{{ max_len(elmt.name) }}", {{elmt.length}}),
|
||||
{% elif elmt.type in ['signed','unsigned'] %}
|
||||
{% if elmt.f_read and elmt.f_write %}
|
||||
YAML_{{elmt.type|upper}}_CUST( "{{ max_len(elmt.name) }}", {{ elmt.bits }}, {{ elmt.f_read}}, {{ elmt.f_write}} ),
|
||||
{% else %}
|
||||
YAML_{{elmt.type|upper}}( "{{ max_len(elmt.name) }}", {{ elmt.bits }} ),
|
||||
{% endif %}
|
||||
{% elif elmt.type == 'enum' %}
|
||||
YAML_ENUM("{{ max_len(elmt.name) }}", {{elmt.bits}}, {{elmt.var_type}}, {{ elmt.func }}),
|
||||
{% elif elmt.type == 'struct' %}
|
||||
YAML_STRUCT("{{ max_len(elmt.name) }}", {{elmt.bits}}, {{elmt.var_type}}, {{ elmt.func }}),
|
||||
{% elif elmt.type == 'union' %}
|
||||
YAML_UNION("{{ max_len(elmt.name) }}", {{elmt.bits}}, {{elmt.var_type}}_elmts, {{ elmt.func}}),
|
||||
{% elif elmt.type == 'array' %}
|
||||
YAML_ARRAY("{{ max_len(elmt.name) }}", {{elmt.bits // elmt.length}}, {{elmt.length}}, {{elmt.var_type}}, {{ elmt.func }}),
|
||||
{% if padding_bits(elmt) > 0 %}
|
||||
YAML_PADDING({{ padding_bits(elmt) }}),
|
||||
{% endif %}
|
||||
{% elif elmt.raw %}
|
||||
{{ elmt.raw }},
|
||||
{% else %}
|
||||
// name='{{elmt.name}}', type='{{elmt.type}}', bits='{{elmt.bits}}', is_array='{{elmt.is_array}}', var_type='{{elmt.var_type}}', kind='{{elmt.cursor.kind}}' , type.kind='{{elmt.cursor.type.kind}}', raw='{{elmt.raw}}'
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
YAML_END
|
||||
};
|
||||
{% if struct.name.startswith('union_') and struct.used_in_arrays %}
|
||||
static const struct YamlNode {{ struct.name }}[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("u", {{ max_bits(struct) }}, {{ struct.name }}_elmts, {{ struct.func }}),
|
||||
YAML_END
|
||||
};
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
#define MAX_{{ root_node_name | upper }}_STR_LEN {{ get_max_len() }}
|
||||
|
||||
{% for tn in root_nodes %}
|
||||
static const struct YamlNode __{{ tn }}_root_node = YAML_ROOT( struct_{{ tn }} );
|
||||
|
||||
const YamlNode* get_{{ tn | lower }}_nodes()
|
||||
{
|
||||
return &__{{ tn }}_root_node;
|
||||
}
|
||||
{% endfor %}
|
||||
Reference in New Issue
Block a user