use std::collections::HashMap;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Clone, Default)]
pub struct Overrides {
pub build: Option<String>,
pub run: Option<String>,
pub include_dir: Option<String>,
pub lib_dir: Option<String>,
}
#[derive(Debug, Serialize, Deserialize)]
#[serde(transparent)]
pub struct OverrideDatabase(HashMap<String, Overrides>);
impl OverrideDatabase {
pub fn new() -> Self {
Self(HashMap::new())
}
pub fn insert(&mut self, key: String, ov: Overrides) {
self.0.insert(key, ov);
}
pub fn get(&self, key: &str) -> Option<&Overrides> {
self.0.get(key)
}
}
impl Default for OverrideDatabase {
fn default() -> Self {
Self::new()
}
}