chromium/mojo/public/cpp/bindings/tests/receiver_unittest.test-mojom

// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

module mojo.test.receiver_unittest.mojom;

import "mojo/public/mojom/base/generic_pending_associated_receiver.mojom";
import "mojo/public/mojom/base/generic_pending_receiver.mojom";

interface TestGenericBinder {
  BindOptionalReceiver(mojo_base.mojom.GenericPendingReceiver? receiver);
  BindReceiver(mojo_base.mojom.GenericPendingReceiver receiver);
  BindOptionalAssociatedReceiver(
      mojo_base.mojom.GenericPendingAssociatedReceiver? receiver);
  BindAssociatedReceiver(
      mojo_base.mojom.GenericPendingAssociatedReceiver receiver);
};

interface TestInterface1 {};
interface TestInterface2 {};

interface RebindTestInterface {
  BlockingUntilExternalSignalCall();
  NormalCall();
  [Sync]
  SyncCall() => ();
};

interface InterfaceDropper {
  Drop(pending_remote<TestInterface1> remote);
};