Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,9 +135,10 @@ RUST_LOG=info mach

# Architecture

`mach` is distributed as the single, binary-only Cargo package `cf-mach`. Its
implementation is split into private modules under `./src`; they are not separate
packages or public Rust APIs.
`mach` is distributed as the single, bin+lib Cargo package `cf-mach`. Its
implementation is split into modules, documented below.

🚧 *Note*: While `cf-mach` can be used as a library, the interface is not stable.

The main complexity comes from the `Network` and `Time` trait abstractions. They
decouple measurements from the request/response and clock implementations, support
Expand Down
7 changes: 7 additions & 0 deletions src/lib.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
pub mod nq_core;
pub mod nq_latency;
pub mod nq_load_generator;
pub mod nq_packetloss;
pub mod nq_rpm;
pub mod nq_stats;
pub mod nq_tokio_network;
9 changes: 2 additions & 7 deletions src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,15 @@ mod access;
mod aim_report;
pub(crate) mod args;
mod latency;
mod nq_core;
mod nq_latency;
mod nq_load_generator;
mod nq_packetloss;
mod nq_rpm;
mod nq_stats;
mod nq_tokio_network;
mod packet_loss;
mod report;
mod rpm;
mod saturate;
mod up_down;
mod util;

use cf_mach::{nq_core, nq_latency, nq_load_generator, nq_packetloss, nq_rpm, nq_tokio_network};

use clap::error::ErrorKind;
use clap::{CommandFactory, Parser};
use clap_verbosity_flag::LevelFilter;
Expand Down