INNER CODE UNIT · Rust

remove

hcavarsan/kftray · crates/kftray-commons/src/lib.rs:123

        pub fn remove(key: &str) -> Self {
            let _lock = EnvLock::acquire();
            let key = key.to_string();
            let original_value = std::env::var(&key).ok();
            unsafe { std::env::remove_var(&key) };
            EnvVarGuard {
                key,
                original_value,
                _lock,
            }
        }
    }

    impl Drop for EnvVarGuard {
        fn drop(&mut self) {
            match &self.original_value {
                Some(val) => unsafe { std::env::set_var(&self.key, val) },
                None => unsafe { std::env::remove_var(&self.key) },

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…