|
1 | | -{% macro scalar(var) %} |
2 | | -{{ var.name }} {% endif %}{{ var.value }} |
| 1 | +{% macro field(field) %} |
| 2 | +{% if field|kind == 'scalar' %} |
| 3 | +{{ macros.scalar(field) }} |
| 4 | +{% elif field|kind == 'union' %} |
| 5 | +{{ macros.union(field) }} |
| 6 | +{% elif field|kind == 'record' %} |
| 7 | +{{ macros.record(field) }} |
| 8 | +{% elif field|kind == 'array' %} |
| 9 | +{{ macros.array(field) }} |
| 10 | +{% elif field|kind == 'list' %} |
| 11 | +{{ macros.list(field) }} |
| 12 | +{% endif %} |
3 | 13 | {% endmacro %} |
4 | 14 |
|
5 | | -{% macro union(var) %} |
| 15 | +{% macro scalar(field) %} |
| 16 | +{{ field.name }} {% endif %}{{ field.value }} |
6 | 17 | {% endmacro %} |
7 | 18 |
|
8 | | -{% macro record(var) %} |
9 | | -{% if var.tagged %}{{ var.name }} {% endif %}{{ var.value|join(' ') }} |
| 19 | +{% macro union(field) %} |
| 20 | +{% for item in field.value.items() %} |
| 21 | +{{ macros.field(item) }} |
| 22 | +{% endfor %} |
10 | 23 | {% endmacro %} |
11 | 24 |
|
12 | | -{% macro array(var) %} |
13 | | -{% if constant %}{% if layered %} |
14 | | -{# layered constant #} |
15 | | -{{ var.name }} LAYERED |
16 | | -{% for val in var.value %} |
| 25 | +{% macro record(field) %} |
| 26 | +{% for item in field.values() %}{% if item.tagged %}{{ item.name }} {% endif %}{{ macros.field(field) }}{% |
| 27 | +endfor |
| 28 | +%} |
| 29 | +{% endmacro %} |
| 30 | + |
| 31 | +{% macro array(field, how="internal") %} |
| 32 | +{% if how == "layered constant" %} |
| 33 | +{{ field.name }} LAYERED |
| 34 | +{% for val in field.value %} |
17 | 35 | CONSTANT |
18 | 36 | {% endfor %} |
19 | | -{% else %} |
20 | | -{# constant #} |
21 | | -{{ var.name }} CONSTANT {{ var.value }} |
22 | | -{% endif %} |
23 | | -{% else %} |
24 | | -{# layered #} |
| 37 | +{% elif how == "constant" %} |
| 38 | +{{ field.name }} CONSTANT {{ field.value }} |
| 39 | +{% elif how == "layered" %} |
25 | 40 | {% if layered %} |
26 | | -{{ var.name }} |
27 | | -{% for val in var.value %}{{ val }}{% endfor %} |
28 | | -{% else %} |
29 | | -{# grid-shaped #} |
30 | | -{{ var.name }} {{ var.value }} |
31 | | -{% endif %} |
| 41 | +{{ field.name }} |
| 42 | +{% for val in field.value %}{{ val }}{% endfor %} |
| 43 | +{% elif how == "internal" %} |
| 44 | +{{ field.name }} {{ macro.internal_array(field) }} |
| 45 | +{% elif how == "external" %} |
| 46 | +{{ field.name}} OPEN/CLOSE {{ field.value }} |
32 | 47 | {% endif %} |
33 | 48 | {% endmacro %} |
34 | 49 |
|
35 | | -{% macro list(var) %} |
| 50 | +{% macro internal_array(field) %} |
| 51 | +{% for chunk in field.value|dask_expand %} |
| 52 | +{{ chunk|nparray2string }} |
| 53 | +{% endfor %} |
| 54 | +{% endmacro %} |
| 55 | + |
| 56 | +{% macro list(field) %} |
| 57 | +{# TODO #} |
36 | 58 | {% endmacro %} |
0 commit comments