OLD | NEW |
1 {% macro encode(field, value) %} | 1 {% macro encode(field, value) %} |
2 {% if field.is_bit_field -%} | 2 {% if field.is_bit_field -%} |
3 static_cast<unsigned>({{value}}) | 3 static_cast<unsigned>({{value}}) |
4 {%- else -%} | 4 {%- else -%} |
5 {{value}} | 5 {{value}} |
6 {%- endif %} | 6 {%- endif %} |
7 {% endmacro %} | 7 {% endmacro %} |
8 | 8 |
9 {% macro decode(field, value) %} | 9 {% macro decode(field, value) %} |
10 {% if field.is_bit_field -%} | 10 {% if field.is_bit_field -%} |
11 static_cast<{{field.type_name}}>({{value}}) | 11 static_cast<{{field.type_name}}>({{value}}) |
12 {%- else -%} | 12 {%- else -%} |
13 {{value}} | 13 {{value}} |
14 {%- endif %} | 14 {%- endif %} |
15 {% endmacro %} | 15 {% endmacro %} |
16 | 16 |
17 {% macro getter_expression(field) %} | 17 {% macro getter_expression(field) %} |
18 {% if field.group_member_name -%} | 18 {% if field.group.name -%} |
19 {{field.group_member_name}}->{{field.name}} | 19 {{field.group.member_name}}->{{field.name}} |
20 {%- else -%} | 20 {%- else -%} |
21 {{field.name}} | 21 {{field.name}} |
22 {%- endif %} | 22 {%- endif %} |
23 {% endmacro %} | 23 {% endmacro %} |
24 | 24 |
25 {% macro setter_expression(field) %} | 25 {% macro setter_expression(field) %} |
26 {% if field.group_member_name -%} | 26 {% if field.group.name -%} |
27 {{field.group_member_name}}.Access()->{{field.name}} | 27 {{field.group.member_name}}.Access()->{{field.name}} |
28 {%- else -%} | 28 {%- else -%} |
29 {{field.name}} | 29 {{field.name}} |
30 {%- endif %} | 30 {%- endif %} |
31 {% endmacro %} | 31 {% endmacro %} |
32 | 32 |
33 {% macro set_if_changed(field, value) %} | 33 {% macro set_if_changed(field, value) %} |
34 {% if field.group_member_name -%} | 34 {% if field.group.name -%} |
35 if (!({{getter_expression(field)}} == {{value}})) | 35 if (!({{getter_expression(field)}} == {{value}})) |
36 {{setter_expression(field)}} = {{value}}; | 36 {{setter_expression(field)}} = {{value}}; |
37 {%- else -%} | 37 {%- else -%} |
38 {{field.name}} = {{value}}; | 38 {{field.name}} = {{value}}; |
39 {%- endif %} | 39 {%- endif %} |
40 {% endmacro %} | 40 {% endmacro %} |
41 | 41 |
42 {% macro nonconst_ref(field) %} | 42 {% macro nonconst_ref(field) %} |
43 {% if field.is_bit_field or field.field_template == 'primitive' -%} | 43 {% if field.is_bit_field or field.field_template == 'primitive' -%} |
44 {{field.type_name}} | 44 {{field.type_name}} |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 {{getter_expression(field)}} == o.{{getter_expression(field)}} && | 120 {{getter_expression(field)}} == o.{{getter_expression(field)}} && |
121 {% endfor %} | 121 {% endfor %} |
122 {% endmacro %} | 122 {% endmacro %} |
123 | 123 |
124 {% macro fieldwise_diff(group_to_diff) %} | 124 {% macro fieldwise_diff(group_to_diff) %} |
125 {% for group in group_to_diff.subgroups %} | 125 {% for group in group_to_diff.subgroups %} |
126 if (a.{{group.group_name}}.Get() != b.{{group.group_name}}.Get()) { | 126 if (a.{{group.group_name}}.Get() != b.{{group.group_name}}.Get()) { |
127 {{fieldwise_diff(group)|indent(2, true)}} | 127 {{fieldwise_diff(group)|indent(2, true)}} |
128 } | 128 } |
129 {% endfor %} | 129 {% endfor %} |
| 130 {% for field in group_to_diff.fields %} |
| 131 if (a.{{getter_expression(field)}} != b.{{getter_expression(field)}}) |
| 132 return true; |
| 133 {% endfor %} |
130 {% for expression in group_to_diff.expressions %} | 134 {% for expression in group_to_diff.expressions %} |
131 if (a.{{expression}} != b.{{expression}}) | 135 if (a.{{expression}} != b.{{expression}}) |
132 return true; | 136 return true; |
133 {% endfor %} | 137 {% endfor %} |
134 {% for predicate in group_to_diff.predicates %} | 138 {% for predicate in group_to_diff.predicates %} |
135 if (!{{predicate}}) | 139 if (!{{predicate}}) |
136 return true; | 140 return true; |
137 {% endfor %} | 141 {% endfor %} |
138 {% endmacro %} | 142 {% endmacro %} |
OLD | NEW |