#![warn(clippy::disallowed_methods)]
#[macro_use]
extern crate shadow_rs;
use std::thread::available_parallelism;
shadow!(shadow);
pub mod bug_report;
pub mod config;
pub mod configs;
pub mod configure;
pub mod context;
pub mod formatter;
pub mod init;
pub mod logger;
pub mod module;
mod modules;
pub mod print;
mod segment;
mod utils;
#[cfg(test)]
mod test;
pub fn num_configured_starship_threads() -> Option<usize> {
std::env::var("STARSHIP_NUM_THREADS")
.ok()
.and_then(|s| s.parse().ok())
}
pub fn num_rayon_threads() -> usize {
num_configured_starship_threads()
.unwrap_or_else(|| available_parallelism().map(usize::from).unwrap_or(1).min(8))
}