1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// Copyright The OpenTelemetry Authors
// SPDX-License-Identifier: Apache-2.0
//! Capability registry and resolution.
//!
//! [`CapabilityRegistry`] collects type-erased capability entries from
//! extensions during the build phase. [`Capabilities`] is produced
//! per-node by [`resolve_bindings`] and provides the consumer API
//! (`require_local`, `require_shared`, `optional_local`,
//! `optional_shared`).
//!
//! # Module layout
//!
//! | Submodule | Contents |
//! |------------------|-------------------------------------------------------------------------------|
//! | [`entry`] | [`LocalCapabilityEntry`], [`SharedCapabilityEntry`], plus resolved-entry types |
//! | [`storage`] | [`CapabilityRegistry`] -- build-phase storage of registrations |
//! | [`capabilities`] | [`Capabilities`] -- per-node consumer API |
//! | [`tracker`] | [`ConsumedTracker`] -- records which variants were consumed |
//! | [`resolve`] | [`resolve_bindings`] -- the per-node resolution pass |
/// Error type alias for capability operations.
pub type Error = crateError;
// -- Public re-exports --------------------------------------------------------
pub use Capabilities;
pub use ;
pub use CapabilityRegistry;
// -- Crate-internal re-exports ------------------------------------------------
pub use ;
// TODO(extension-system): wired by engine build phase in a follow-up PR;
// until then only the test module imports it via `use super::*;`.
pub use resolve_bindings;
pub use ConsumedTracker;