OLD | NEW |
1 {%- set class_name = struct.name ~ "_Data" %} | 1 {%- set class_name = struct.name ~ "_Data" %} |
2 | 2 |
3 {#- Validates the specified struct field, which is supposed to be an object | 3 {#- Validates the specified struct field, which is supposed to be an object |
4 (struct/array/string/map/union). | 4 (struct/array/string/map/union). |
5 This macro is expanded by the Validate() method. #} | 5 This macro is expanded by the Validate() method. #} |
6 {%- macro _validate_object(struct, packed_field) %} | 6 {%- macro _validate_object(struct, packed_field) %} |
7 {%- set name = packed_field.field.name %} | 7 {%- set name = packed_field.field.name %} |
8 {%- set kind = packed_field.field.kind %} | 8 {%- set kind = packed_field.field.kind %} |
9 {%- if not kind|is_nullable_kind %} | 9 {%- if not kind|is_nullable_kind %} |
10 {%- if kind|is_union_kind %} | 10 {%- if kind|is_union_kind %} |
(...skipping 15 matching lines...) Expand all Loading... |
26 &{{name}}_validate_params)) { | 26 &{{name}}_validate_params)) { |
27 return false; | 27 return false; |
28 } | 28 } |
29 {%- elif kind|is_map_kind %} | 29 {%- elif kind|is_map_kind %} |
30 const mojo::internal::ArrayValidateParams {{name}}_validate_params( | 30 const mojo::internal::ArrayValidateParams {{name}}_validate_params( |
31 {{kind.value_kind|get_map_validate_params_ctor_args|indent(6)}}); | 31 {{kind.value_kind|get_map_validate_params_ctor_args|indent(6)}}); |
32 if (!mojo::internal::ValidateMap(object->{{name}}, bounds_checker, | 32 if (!mojo::internal::ValidateMap(object->{{name}}, bounds_checker, |
33 &{{name}}_validate_params)) { | 33 &{{name}}_validate_params)) { |
34 return false; | 34 return false; |
35 } | 35 } |
| 36 {%- elif kind|is_native_kind %} |
| 37 if (!mojo::internal::ValidateNative(object->{{name}}, bounds_checker)) |
| 38 return false; |
36 {%- elif kind|is_struct_kind %} | 39 {%- elif kind|is_struct_kind %} |
37 if (!mojo::internal::ValidateStruct(object->{{name}}, bounds_checker)) | 40 if (!mojo::internal::ValidateStruct(object->{{name}}, bounds_checker)) |
38 return false; | 41 return false; |
39 {%- elif kind|is_union_kind %} | 42 {%- elif kind|is_union_kind %} |
40 if (!mojo::internal::ValidateInlinedUnion(object->{{name}}, bounds_checker)) { | 43 if (!mojo::internal::ValidateInlinedUnion(object->{{name}}, bounds_checker)) { |
41 return false; | 44 return false; |
42 } | 45 } |
43 {%- else %} | 46 {%- else %} |
44 #error Not reached! | 47 #error Not reached! |
45 {%- endif %} | 48 {%- endif %} |
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
204 mojo::internal::DecodeHandle(&{{name}}, handles); | 207 mojo::internal::DecodeHandle(&{{name}}, handles); |
205 {%- endif %} | 208 {%- endif %} |
206 {%- endif %} | 209 {%- endif %} |
207 {%- endfor %} | 210 {%- endfor %} |
208 } | 211 } |
209 | 212 |
210 {{class_name}}::{{class_name}}() { | 213 {{class_name}}::{{class_name}}() { |
211 header_.num_bytes = sizeof(*this); | 214 header_.num_bytes = sizeof(*this); |
212 header_.version = {{struct.versions[-1].version}}; | 215 header_.version = {{struct.versions[-1].version}}; |
213 } | 216 } |
OLD | NEW |