Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(526)

Side by Side Diff: mojo/public/tools/bindings/generators/cpp_templates/struct_definition.tmpl

Issue 1518293002: [mojo] Add Mojo bindings support for IPC::ParamTraits (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@pickle4
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698