#hash-map #diff #subtract

hash_map_diff

Comparing changes between two HashMaps

2 unstable releases

0.2.0 Aug 29, 2022
0.1.0 Aug 23, 2022

#2200 in Algorithms

Download history 2/week @ 2023-11-27 20/week @ 2023-12-04 31/week @ 2023-12-11 135/week @ 2023-12-18 128/week @ 2024-01-01 266/week @ 2024-01-08 199/week @ 2024-01-15 199/week @ 2024-01-22 244/week @ 2024-01-29 251/week @ 2024-02-05 140/week @ 2024-02-12 429/week @ 2024-02-19 291/week @ 2024-02-26 288/week @ 2024-03-04 127/week @ 2024-03-11

1,136 downloads per month

MIT license

5KB
83 lines

hash_map_diff

This library is intended to compute diff between two hashmaps to see which keys have been removed in lhs, and which ones have received new value in rhs.

Usage example

use hash_map_diff::{hash_map_diff, HashMapDiff};

pub fn main() {
    let lhs = [("unchanged", 1), ("removed", 2), ("changed", 3)].into();
    let rhs = [("unchanged", 1), ("changed", 5), ("added", 4)].into();

    let received_diff = hash_map_diff(&lhs, &rhs);

    let expected_diff = HashMapDiff {
        updated: [(&"changed", &5), (&"added", &4)].into(),
        removed: [(&"removed", &2)].into(),
    };

    assert_eq!(received_diff, expected_diff);
}

Building

cargo b

Testing

cargo t

No runtime deps