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
//! `bb-core` — the kernel of bb-cli.
//!
//! Holds the dependency-injection **seam traits** ([`Transport`], [`GitClient`],
//! [`Prompter`], [`Browser`], [`ConfigProvider`]), the shared **data types**
//! ([`RepoId`], [`HttpRequest`], [`HttpResponse`]), the terminal **IO layer**
//! ([`IoStreams`], [`ColorScheme`]), the **error/exit-code** model, and the
//! [`Context`] container that wires everything together.
//!
//! Concrete implementations of the seam traits live in the leaf crates
//! (`bb-api`, `bb-config`, `bb-git`) and the `bb` binary. This mirrors the
//! Factory pattern in GitHub's `gh` CLI: commands depend only on the traits, so
//! every command is testable by swapping in fakes.
// Absorbed from the former `bb-core` crate: the full seam-trait + type API is
// retained even though the single binary doesn't exercise every method/field.
pub use ;
pub use ;
pub use ;
pub use ;
// TestBuffers is only referenced by tests; gate the re-export so it isn't
// flagged as unused in a non-test build.
pub use TestBuffers;
pub use ;
pub use ;