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
//! Unified runtime registration context.
//!
//! [`RuntimeContext`] bundles every registry the framework needs into a
//! single value that consumers pass around (codec/container/source/
//! filter). Sibling crates expose a uniform `register(&mut
//! RuntimeContext)` entry point that installs themselves into the
//! relevant sub-registry.
use CodecRegistry;
use ContainerRegistry;
use FilterRegistry;
use SourceRegistry;
/// Aggregate of every registry the framework consumes.
///
/// Every sibling crate that contributes implementations exposes
/// `pub fn register(ctx: &mut RuntimeContext)` to install itself.
/// Construct with [`RuntimeContext::new`] for an empty context, then
/// call each sibling's `register` to fill it in.