1use std::sync::OnceLock;
2
3static FLAGS: OnceLock<EnvironmentFlags> = OnceLock::new();
4
5bitflags::bitflags! {
6 #[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
7 pub struct EnvironmentFlags: u32 {
8 const SKIP_WHEEL_FILENAME_CHECK = 1 << 0;
9 const HIDE_BUILD_OUTPUT = 1 << 1;
10 }
11}
12
13#[allow(clippy::result_unit_err)]
15pub fn init(flags: EnvironmentFlags) -> Result<(), ()> {
16 FLAGS.set(flags).map_err(|_| ())
17}
18
19pub fn contains(flag: EnvironmentFlags) -> bool {
21 FLAGS.get_or_init(EnvironmentFlags::default).contains(flag)
22}