Chromium Code Reviews| Index: mojo/public/interfaces/bindings/interface_control_messages.mojom |
| diff --git a/mojo/public/interfaces/bindings/interface_control_messages.mojom b/mojo/public/interfaces/bindings/interface_control_messages.mojom |
| index 2143c06cce5c64a015599e3fb040628964637ded..8f88bf66201699a51c44759b1b38924bfac5c2e9 100644 |
| --- a/mojo/public/interfaces/bindings/interface_control_messages.mojom |
| +++ b/mojo/public/interfaces/bindings/interface_control_messages.mojom |
| @@ -3,7 +3,7 @@ |
| // found in the LICENSE file. |
| [JavaPackage="org.chromium.mojo.bindings"] |
|
yzshen1
2016/08/25 21:08:57
nit: do you think it is better to change this name
Sam McNally
2016/08/25 21:47:50
Done.
|
| -module mojo; |
| +module mojo.interface_control; |
| // For each user-defined interface, some control functions are provided at the |
| // same end of the message pipe as the user-defined interface, providing |
| @@ -15,38 +15,20 @@ module mojo; |
| // This control function runs the input command. If the command is not |
| // supported, |output| is set to null; otherwise |output| stores the result, |
| // whose type depends on the input. |
| -// |
| -// TODO(yzshen): Once union support is ready, switch the following definition |
| -// to: |
| -// struct RunMessageParams { |
| -// RunInput input; |
| -// }; |
| -// union RunInput { |
| -// QueryVersion query_version; |
| -// }; |
| -// |
| -// struct RunResponseMessageParams { |
| -// RunOutput? output; |
| -// }; |
| -// union RunOutput { |
| -// QueryVersionResult query_version_result; |
| -// }; |
| const uint32 kRunMessageId = 0xFFFFFFFF; |
| struct RunMessageParams { |
| - // The reserved fields make the layout compatible with the RunInput union |
| - // described above. |
| - uint32 reserved0; // Must be set to 16. |
| - uint32 reserved1; // Must be set to 0; |
| + RunInput input; |
| +}; |
| +union RunInput { |
| QueryVersion query_version; |
| }; |
| struct RunResponseMessageParams { |
| - // The reserved fields make the layout compatible with the RunOutput union |
| - // described above. |
| - uint32 reserved0; // Must be set to 16. |
| - uint32 reserved1; // Must be set to 0. |
| + RunOutput? output; |
| +}; |
| +union RunOutput { |
| QueryVersionResult query_version_result; |
| }; |
| @@ -62,23 +44,13 @@ struct QueryVersionResult { |
| // |
| // This control function runs the input command. If the operation fails or the |
| // command is not supported, the message pipe is closed. |
| -// |
| -// TODO(yzshen): Once union support is ready, switch the following definition |
| -// to: |
| -// struct RunOrClosePipeMessageParams { |
| -// RunOrClosePipeInput input; |
| -// }; |
| -// union RunOrClosePipeInput { |
| -// RequireVersion require_version; |
| -// }; |
| const uint32 kRunOrClosePipeMessageId = 0xFFFFFFFE; |
| struct RunOrClosePipeMessageParams { |
| - // The reserved fields make the layout compatible with the RunOrClosePipeInput |
| - // union described above. |
| - uint32 reserved0; // Must be set to 16. |
| - uint32 reserved1; // Must be set to 0. |
| + RunOrClosePipeInput input; |
| +}; |
| +union RunOrClosePipeInput { |
| RequireVersion require_version; |
| }; |