blob: 055bb3d4843789fd7fc516977fa46f791cf6c48d [file] [log] [blame]
// 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;
interface TestInterface {
Foo();
};
struct StructWithInterface {
TestInterface iptr;
};
struct StructWithInterfaceArray {
array<StructWithInterface> structs_array;
array<StructWithInterface>? structs_nullable_array;
array<StructWithInterface?> nullable_structs_array;
array<StructWithInterface?>? nullable_structs_nullable_array;
};
struct StructWithDataPipeConsumers {
array<handle<data_pipe_consumer>> handles_array;
array<handle<data_pipe_consumer>>? handles_nullable_array;
array<handle<data_pipe_consumer>?> nullable_handles_array;
array<handle<data_pipe_consumer>?>? nullable_handles_nullable_array;
};
struct StructWithDataPipeProducers {
array<handle<data_pipe_producer>> handles_array;
array<handle<data_pipe_producer>>? handles_nullable_array;
array<handle<data_pipe_producer>?> nullable_handles_array;
array<handle<data_pipe_producer>?>? nullable_handles_nullable_array;
};
struct StructWithSharedBuffers {
array<handle<shared_buffer>> handles_array;
array<handle<shared_buffer>>? handles_nullable_array;
array<handle<shared_buffer>?> nullable_handles_array;
array<handle<shared_buffer>?>? nullable_handles_nullable_array;
};
struct StructWithMessagePipes {
array<handle<message_pipe>> handles_array;
array<handle<message_pipe>>? handles_nullable_array;
array<handle<message_pipe>?> nullable_handles_array;
array<handle<message_pipe>?>? nullable_handles_nullable_array;
};
struct StructWithHandles {
array<handle> handles_array;
array<handle>? handles_nullable_array;
array<handle?> nullable_handles_array;
array<handle?>? nullable_handles_nullable_array;
};
struct StructWithInterfaceRequests {
array<TestInterface&> req_array;
array<TestInterface&>? req_nullable_array;
array<TestInterface&?> nullable_req_array;
array<TestInterface&?>? nullable_req_nullable_array;
};