Change a hashmap to make clippy happy

This seems to be a sad false positive, instead I rewrote the function
returning the hashmap to use `&str` keys instead
This commit is contained in:
sholderbach 2024-07-25 22:35:10 +02:00
parent e1e32ea8ea
commit 4d9c582142
2 changed files with 7 additions and 13 deletions

View File

@ -321,16 +321,10 @@ mod test {
let env = engine_state.render_env_vars();
assert!(
matches!(env.get(&"FOO".to_string()), Some(&Value::String { val, .. }) if val == "foo")
);
assert!(
matches!(env.get(&"SYMBOLS".to_string()), Some(&Value::String { val, .. }) if val == symbols)
);
assert!(
matches!(env.get(&symbols.to_string()), Some(&Value::String { val, .. }) if val == "symbols")
);
assert!(env.get(&"PWD".to_string()).is_some());
assert!(matches!(env.get("FOO"), Some(&Value::String { val, .. }) if val == "foo"));
assert!(matches!(env.get("SYMBOLS"), Some(&Value::String { val, .. }) if val == symbols));
assert!(matches!(env.get(symbols), Some(&Value::String { val, .. }) if val == "symbols"));
assert!(env.contains_key("PWD"));
assert_eq!(env.len(), 4);
}
}

View File

@ -428,13 +428,13 @@ impl EngineState {
.1
}
pub fn render_env_vars(&self) -> HashMap<&String, &Value> {
let mut result = HashMap::new();
pub fn render_env_vars(&self) -> HashMap<&str, &Value> {
let mut result: HashMap<&str, &Value> = HashMap::new();
for overlay_name in self.active_overlay_names(&[]) {
let name = String::from_utf8_lossy(overlay_name);
if let Some(env_vars) = self.env_vars.get(name.as_ref()) {
result.extend(env_vars);
result.extend(env_vars.iter().map(|(k, v)| (k.as_str(), v)));
}
}