INNER CODE UNIT · Rust

exposure_changes

Symph0nia/CyberEdge · src/repository/mod.rs:321

fn exposure_changes(
    task: &Task,
    previous: &BTreeMap<String, ExposureState>,
    current: &BTreeMap<String, ExposureState>,
    timestamp: prost_types::Timestamp,
    include_disappeared: bool,
) -> Vec<ExposureChange> {
    let keys = previous
        .keys()
        .chain(current.keys())
        .cloned()
        .collect::<BTreeSet<_>>();
    keys.into_iter()
        .filter_map(|resource_id| {
            let before = previous.get(&resource_id);
            let after = current.get(&resource_id);
            let kind = match (before, after) {
                (None, Some(_)) => crate::proto::ExposureChangeKind::Appeared,

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…