use std::collections::HashMap;
use kameleoon_core::types::DataFile as TypesDataFile;
use crate::{feature_flag_ex::FeatureFlagEx, utils_ex::ArcStr};
#[derive(Debug, rustler::NifStruct)]
#[module = "Kameleoon.Types.DataFile"]
#[rustler(encode)]
pub(crate) struct DataFileEx {
feature_flags: HashMap<ArcStr, FeatureFlagEx>,
date_modified: u64,
}
impl From<&TypesDataFile> for DataFileEx {
fn from(value: &TypesDataFile) -> Self {
Self {
feature_flags: value
.feature_flags
.iter()
.map(|(key, feature_flag)| (key.clone().into(), feature_flag.into()))
.collect(),
date_modified: value.date_modified,
}
}
}