blob: d98d84f2f071869b4a50ab487e9f5b46054a628f [file] [log] [blame]
// Copyright 2021 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.component;
/// A framework-provided protocol that allows components that use it to bind to
/// the component that exposes it. The act of connecting to this protocol will
/// trigger the bind. Thus, this protocol contains no methods. For more details
/// on binding, see
/// https://fuchsia.dev/fuchsia-src/concepts/components/v2/lifecycle#binding.
///
/// When a component connects to protocol, the component exposing this capability
/// will be started if it's not already running. Upon a failure to start, the
/// component framework will close the server end of the channel with a
/// zx.Status epitaph.
///
/// Note: The component doesn't need to serve this protocol, it is implemented
/// by the framework.
@discoverable
closed protocol Binder {};