Skip to main content

Module rustc

Module rustc 

Source

Re-exportsΒ§

use cargo_util::collections::HashMap; πŸ”’
use std::env; πŸ”’
use std::env; πŸ”’
use std::hash::Hash; πŸ”’
use std::hash::Hash; πŸ”’
use std::hash::Hasher; πŸ”’
use std::path::Path; πŸ”’
use std::path::PathBuf; πŸ”’
use std::sync::Mutex; πŸ”’
use anyhow::Context as _; πŸ”’
use cargo_util::ProcessBuilder; πŸ”’
use cargo_util::ProcessError; πŸ”’
use cargo_util::paths; πŸ”’
use filetime::FileTime; πŸ”’
use serde::Deserialize; πŸ”’
use serde::Deserialize; πŸ”’
use serde::Serialize; πŸ”’
use serde::Serialize; πŸ”’
use tracing::debug; πŸ”’
use tracing::info; πŸ”’
use tracing::warn; πŸ”’
use crate::compiler::apply_env_config; πŸ”’
use crate::util::interning::InternedString; πŸ”’
use crate::util::CargoResult; πŸ”’
use crate::util::GlobalContext; πŸ”’
use crate::util::StableHasher; πŸ”’

StructsΒ§

Cache πŸ”’
It is a well known fact that rustc is not the fastest compiler in the world. What is less known is that even rustc --version --verbose takes about a hundred milliseconds! Because we need compiler version info even for no-op builds, we cache it here, based on compiler’s mtime and rustup’s current toolchain.
CacheData πŸ”’
Output πŸ”’
Rustc
Information on the rustc executable

FunctionsΒ§

process_fingerprint πŸ”’
rustc_fingerprint πŸ”’