use super::{item::SubscanResultItem, statistics::SubscanModuleStatistic};
use crate::types::result::{item::SubscanResultItems, statistics::SubscanResultStatistics};
#[derive(Clone, Debug, Default)]
pub struct PoolResult {
pub statistics: SubscanResultStatistics,
pub items: SubscanResultItems,
}
impl PoolResult {
pub async fn insert(&mut self, module: &str, subdomain: SubscanResultItem) -> bool {
let defaults = SubscanModuleStatistic::default();
let inserted = self.items.insert(subdomain);
let stats = self.statistics.entry(module.to_owned()).or_insert(defaults);
if inserted {
stats.count += 1;
}
inserted
}
}