| OLD | NEW |
| 1 size_t GetSerializedSize_(const {{struct.name}}Ptr& input) { | 1 size_t GetSerializedSize_(const {{struct.name}}Ptr& input) { |
| 2 if (!input) | 2 if (!input) |
| 3 return 0; | 3 return 0; |
| 4 size_t size = sizeof(internal::{{struct.name}}_Data); | 4 size_t size = sizeof(internal::{{struct.name}}_Data); |
| 5 {%- for pf in struct.packed.packed_fields if pf.field.kind|is_object_kind %} | 5 {%- for pf in struct.packed.packed_fields if pf.field.kind|is_object_kind %} |
| 6 size += GetSerializedSize_(input->{{pf.field.name}}); | 6 size += GetSerializedSize_(input->{{pf.field.name}}); |
| 7 {%- endfor %} | 7 {%- endfor %} |
| 8 return size; | 8 return size; |
| 9 } | 9 } |
| 10 | 10 |
| (...skipping 27 matching lines...) Expand all Loading... |
| 38 !result->{{pf.field.name}}.is_valid(), | 38 !result->{{pf.field.name}}.is_valid(), |
| 39 mojo::internal::VALIDATION_ERROR_UNEXPECTED_INVALID_HANDLE, | 39 mojo::internal::VALIDATION_ERROR_UNEXPECTED_INVALID_HANDLE, |
| 40 "invalid {{pf.field.name}} field in {{struct.name}} struct"); | 40 "invalid {{pf.field.name}} field in {{struct.name}} struct"); |
| 41 {%- endif %} | 41 {%- endif %} |
| 42 {%- else %} | 42 {%- else %} |
| 43 result->{{pf.field.name}} = input->{{pf.field.name}}; | 43 result->{{pf.field.name}} = input->{{pf.field.name}}; |
| 44 {%- endif %} | 44 {%- endif %} |
| 45 {%- endfor %} | 45 {%- endfor %} |
| 46 *output = result; | 46 *output = result; |
| 47 } else { | 47 } else { |
| 48 *output = NULL; | 48 *output = nullptr; |
| 49 } | 49 } |
| 50 } | 50 } |
| 51 | 51 |
| 52 void Deserialize_(internal::{{struct.name}}_Data* input, | 52 void Deserialize_(internal::{{struct.name}}_Data* input, |
| 53 {{struct.name}}Ptr* output) { | 53 {{struct.name}}Ptr* output) { |
| 54 if (input) { | 54 if (input) { |
| 55 {{struct.name}}Ptr result({{struct.name}}::New()); | 55 {{struct.name}}Ptr result({{struct.name}}::New()); |
| 56 {%- for pf in struct.packed.packed_fields %} | 56 {%- for pf in struct.packed.packed_fields %} |
| 57 {%- if pf.field.kind|is_object_kind %} | 57 {%- if pf.field.kind|is_object_kind %} |
| 58 Deserialize_(input->{{pf.field.name}}.ptr, &result->{{pf.field.name}}); | 58 Deserialize_(input->{{pf.field.name}}.ptr, &result->{{pf.field.name}}); |
| 59 {%- elif pf.field.kind|is_interface_kind %} | 59 {%- elif pf.field.kind|is_interface_kind %} |
| 60 if (input->{{pf.field.name}}.is_valid()) | 60 if (input->{{pf.field.name}}.is_valid()) |
| 61 result->{{pf.field.name}}.Bind(mojo::MakeScopedHandle(mojo::internal::Fetc
hAndReset(&input->{{pf.field.name}}))); | 61 result->{{pf.field.name}}.Bind(mojo::MakeScopedHandle(mojo::internal::Fetc
hAndReset(&input->{{pf.field.name}}))); |
| 62 {%- elif pf.field.kind|is_any_handle_kind %} | 62 {%- elif pf.field.kind|is_any_handle_kind %} |
| 63 result->{{pf.field.name}}.reset(mojo::internal::FetchAndReset(&input->{{pf.f
ield.name}})); | 63 result->{{pf.field.name}}.reset(mojo::internal::FetchAndReset(&input->{{pf.f
ield.name}})); |
| 64 {%- elif pf.field.kind|is_enum_kind %} | 64 {%- elif pf.field.kind|is_enum_kind %} |
| 65 result->{{pf.field.name}} = static_cast<{{pf.field.kind|cpp_wrapper_type}}>( | 65 result->{{pf.field.name}} = static_cast<{{pf.field.kind|cpp_wrapper_type}}>( |
| 66 input->{{pf.field.name}}); | 66 input->{{pf.field.name}}); |
| 67 {%- else %} | 67 {%- else %} |
| 68 result->{{pf.field.name}} = input->{{pf.field.name}}; | 68 result->{{pf.field.name}} = input->{{pf.field.name}}; |
| 69 {%- endif %} | 69 {%- endif %} |
| 70 {%- endfor %} | 70 {%- endfor %} |
| 71 *output = result.Pass(); | 71 *output = result.Pass(); |
| 72 } else { | 72 } else { |
| 73 output->reset(); | 73 output->reset(); |
| 74 } | 74 } |
| 75 } | 75 } |
| OLD | NEW |