| // Copyright 2015 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module mojo.test; |
| |
| import "mojo/public/interfaces/bindings/tests/ping_service.mojom"; |
| |
| interface FooInterface {}; |
| |
| struct StructContainsAssociated { |
| associated FooInterface? foo_interface; |
| associated FooInterface& foo_request; |
| array<associated FooInterface> foo_interfaces; |
| array<associated FooInterface&> foo_requests; |
| }; |
| |
| union UnionContainsAssociated { |
| associated FooInterface foo_interface; |
| associated FooInterface& foo_request; |
| array<associated FooInterface> foo_interfaces; |
| array<associated FooInterface&> foo_requests; |
| }; |
| |
| interface InterfacePassesAssociated { |
| PassFoo(associated FooInterface foo_interface, |
| associated FooInterface& foo_request) => |
| (associated FooInterface foo_interface, |
| associated FooInterface& foo_request); |
| |
| PassStruct(StructContainsAssociated foo_struct) => |
| (StructContainsAssociated foo_struct); |
| |
| PassUnion(UnionContainsAssociated foo_union) => |
| (UnionContainsAssociated foo_union); |
| }; |
| |
| interface IntegerSender { |
| Echo(int32 value) => (int32 value); |
| Send(int32 value); |
| }; |
| |
| interface IntegerSenderConnection { |
| GetSender(associated IntegerSender& sender); |
| AsyncGetSender() => (associated IntegerSender sender); |
| }; |
| |
| interface AssociatedPingProvider { |
| GetPing(associated PingService& request); |
| }; |
| |
| interface AssociatedPingProviderProvider { |
| GetPingProvider(associated AssociatedPingProvider& request); |
| }; |