| OLD | NEW |
| 1 {%- import "interface_macros.tmpl" as interface_macros %} | 1 {%- import "interface_macros.tmpl" as interface_macros %} |
| 2 {%- set class_name = interface.name %} | 2 {%- set class_name = interface.name %} |
| 3 {%- set proxy_name = interface.name ~ "Proxy" %} | 3 {%- set proxy_name = interface.name ~ "Proxy" %} |
| 4 | 4 |
| 5 {%- macro alloc_params(parameters) %} | 5 {%- macro alloc_params(parameters) %} |
| 6 {%- for param in parameters %} | 6 {%- for param in parameters %} |
| 7 {%- if param.kind|is_object_kind %} | 7 {%- if param.kind|is_object_kind %} |
| 8 {{param.kind|cpp_result_type}} p{{loop.index}}; | 8 {{param.kind|cpp_result_type}} p{{loop.index}}; |
| 9 Deserialize_(params->{{param.name}}.ptr, &p{{loop.index}}); | 9 Deserialize_(params->{{param.name}}.ptr, &p{{loop.index}}); |
| 10 {% endif -%} | 10 {% endif -%} |
| 11 {%- endfor %} | 11 {%- endfor %} |
| 12 {%- endmacro %} | 12 {%- endmacro %} |
| 13 | 13 |
| 14 {%- macro pass_params(parameters) %} | 14 {%- macro pass_params(parameters) %} |
| 15 {%- for param in parameters %} | 15 {%- for param in parameters %} |
| 16 {%- if param.kind|is_string_kind -%} | 16 {%- if param.kind|is_string_kind -%} |
| 17 p{{loop.index}} | 17 p{{loop.index}} |
| 18 {%- elif param.kind|is_object_kind -%} | 18 {%- elif param.kind|is_object_kind -%} |
| 19 p{{loop.index}}.Pass() | 19 p{{loop.index}}.Pass() |
| 20 {%- elif param.kind|is_interface_kind -%} | 20 {%- elif param.kind|is_interface_kind -%} |
| 21 mojo::MakeProxy<{{param.kind.name}}>(mojo::MakeScopedHandle(mojo::internal::Fetc
hAndReset(¶ms->{{param.name}}))) | 21 mojo::MakeProxy<{{param.kind.name}}>(mojo::MakeScopedHandle(mojo::internal::Fetc
hAndReset(¶ms->{{param.name}}))) |
| 22 {%- elif param.kind|is_interface_request_kind -%} |
| 23 mojo::MakeRequest<{{param.kind.kind.name}}>(mojo::MakeScopedHandle(mojo::interna
l::FetchAndReset(¶ms->{{param.name}}))) |
| 22 {%- elif param.kind|is_handle_kind -%} | 24 {%- elif param.kind|is_handle_kind -%} |
| 23 mojo::MakeScopedHandle(mojo::internal::FetchAndReset(¶ms->{{param.name}})) | 25 mojo::MakeScopedHandle(mojo::internal::FetchAndReset(¶ms->{{param.name}})) |
| 24 {%- elif param.kind|is_enum_kind -%} | 26 {%- elif param.kind|is_enum_kind -%} |
| 25 static_cast<{{param.kind|cpp_wrapper_type}}>(params->{{param.name}}) | 27 static_cast<{{param.kind|cpp_wrapper_type}}>(params->{{param.name}}) |
| 26 {%- else -%} | 28 {%- else -%} |
| 27 params->{{param.name}} | 29 params->{{param.name}} |
| 28 {%- endif -%} | 30 {%- endif -%} |
| 29 {%- if not loop.last %}, {% endif %} | 31 {%- if not loop.last %}, {% endif %} |
| 30 {%- endfor %} | 32 {%- endfor %} |
| 31 {%- endmacro %} | 33 {%- endmacro %} |
| (...skipping 14 matching lines...) Expand all Loading... |
| 46 {{params_name}}::New(builder.buffer()); | 48 {{params_name}}::New(builder.buffer()); |
| 47 {#--- Sets #} | 49 {#--- Sets #} |
| 48 {% for param in parameters %} | 50 {% for param in parameters %} |
| 49 {%- if param.kind|is_object_kind %} | 51 {%- if param.kind|is_object_kind %} |
| 50 Serialize_(mojo::internal::Forward(in_{{param.name}}), builder.buffer(), ¶
ms->{{param.name}}.ptr); | 52 Serialize_(mojo::internal::Forward(in_{{param.name}}), builder.buffer(), ¶
ms->{{param.name}}.ptr); |
| 51 {%- elif param.kind|is_interface_kind %} | 53 {%- elif param.kind|is_interface_kind %} |
| 52 if (!in_{{param.name}}.get()) { | 54 if (!in_{{param.name}}.get()) { |
| 53 params->{{param.name}} = mojo::MessagePipeHandle(); | 55 params->{{param.name}} = mojo::MessagePipeHandle(); |
| 54 } else { | 56 } else { |
| 55 // Delegate handle. | 57 // Delegate handle. |
| 56 params->{{param.name}} = | 58 params->{{param.name}} = in_{{param.name}}.PassMessagePipe().release(); |
| 57 in_{{param.name}}.ResetAndReturnMessagePipe().release(); | |
| 58 } | 59 } |
| 60 {%- elif param.kind|is_interface_request_kind %} |
| 61 // Delegate handle. |
| 62 params->{{param.name}} = in_{{param.name}}.PassMessagePipe().release(); |
| 59 {%- elif param.kind|is_handle_kind %} | 63 {%- elif param.kind|is_handle_kind %} |
| 60 params->{{param.name}} = in_{{param.name}}.release(); | 64 params->{{param.name}} = in_{{param.name}}.release(); |
| 61 {%- else %} | 65 {%- else %} |
| 62 params->{{param.name}} = in_{{param.name}}; | 66 params->{{param.name}} = in_{{param.name}}; |
| 63 {%- endif %} | 67 {%- endif %} |
| 64 {%- endfor %} | 68 {%- endfor %} |
| 65 mojo::Message message; | 69 mojo::Message message; |
| 66 params->EncodePointersAndHandles(message.mutable_handles()); | 70 params->EncodePointersAndHandles(message.mutable_handles()); |
| 67 builder.Finish(&message); | 71 builder.Finish(&message); |
| 68 {%- endmacro %} | 72 {%- endmacro %} |
| (...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 261 {% if interface|has_callbacks %} | 265 {% if interface|has_callbacks %} |
| 262 {{class_name}}ResponseValidator::{{class_name}}ResponseValidator( | 266 {{class_name}}ResponseValidator::{{class_name}}ResponseValidator( |
| 263 mojo::MessageReceiver* sink) : MessageFilter(sink) { | 267 mojo::MessageReceiver* sink) : MessageFilter(sink) { |
| 264 } | 268 } |
| 265 | 269 |
| 266 bool {{class_name}}ResponseValidator::Accept(mojo::Message* message) { | 270 bool {{class_name}}ResponseValidator::Accept(mojo::Message* message) { |
| 267 // TODO(yzshen): implement validation logic. | 271 // TODO(yzshen): implement validation logic. |
| 268 return sink_->Accept(message); | 272 return sink_->Accept(message); |
| 269 } | 273 } |
| 270 {%- endif -%} | 274 {%- endif -%} |
| OLD | NEW |