A runtime mode can combine a dry-run flag with a selected log level to describe behavior clearly.

Program

Play the program to choose a log level and see the resulting mode label.

feature_flag_matrix.rs
fn main() {
    let dry_run = true;
    let log_level = ;
    let label = match (dry_run, log_level) {
        (true, "debug") => "dry-run debug",
        (true, "quiet") => "dry-run quiet",
        (true, _) => "dry-run",
        (false, "debug") => "live debug",
        _ => "live",
    };
    println!("{label}");
}
fn main() {
    let dry_run = true;
    let log_level = ;
    let label = match (dry_run, log_level) {
        (true, "debug") => "dry-run debug",
        (true, "quiet") => "dry-run quiet",
        (true, _) => "dry-run",
        (false, "debug") => "live debug",
        _ => "live",
    };
    println!("{label}");
}
fn main() {
    let dry_run = true;
    let log_level = ;
    let label = match (dry_run, log_level) {
        (true, "debug") => "dry-run debug",
        (true, "quiet") => "dry-run quiet",
        (true, _) => "dry-run",
        (false, "debug") => "live debug",
        _ => "live",
    };
    println!("{label}");
}
flag `dry_run` is a boolean flag that changes whether work is only simulated.
mode value `log_level` is a string mode selected at runtime.
match table Matching the pair keeps the flag matrix explicit and readable.