Module config

Source
Expand description

This module defines the central Config struct, which aggregates all components of the bootstrap configuration into a single unit.

It serves as the primary public interface for accessing the bootstrap configuration. The module coordinates the overall configuration parsing process using logic from parsing.rs and provides top-level methods such as Config::parse() for initialization, as well as utility methods for querying and manipulating the complete configuration state.

Additionally, this module contains the core logic for parsing, validating, and inferring the final Config from various raw inputs.

It manages the process of reading command-line arguments, environment variables, and the bootstrap.toml file—merging them, applying defaults, and performing cross-component validation. The main parse_inner function and its supporting helpers reside here, transforming raw Toml data into the structured Config type.

Re-exports§

pub use crate::core::config::flags::Subcommand;

Structs§

Config
Global configuration for the entire build and/or bootstrap.

Constants§

RUSTC_IF_UNCHANGED_ALLOWED_PATHS
Each path in this list is considered “allowed” in the download-rustc="if-unchanged" logic. This means they can be modified and changes to these paths should never trigger a compiler build when “if-unchanged” is set.