collect-once-hashmap 0.2.0

A hashmap that can be collected only when there are unique keys in the iterator
Documentation
# collect-once-hashmap

This crate provides a type `CollectOnceHashMap` (and the same for `BTreeMap`
that can be collected from an iterator just like a normal
`std::collections::HashMap`, but it makes sure that a duplicated key results in
an error.

Example:

```rust
# use collect_once_hashmap::{CollectOnceHashMap, Error};
let hm = vec![(1, 1), (1, 2)]
    .into_iter()
    .collect::<CollectOnceHashMap<u8, u8>>()
    .into_inner();

assert!(hm.is_err());
assert!(std::matches!(hm, Err(Error::DuplicatedKey(1))));

let bm = vec![(1, 1), (1, 2)]
    .into_iter()
    .collect::<CollectOnceBTreeMap<u8, u8>>()
    .into_inner();

assert!(bm.is_err());
assert!(std::matches!(bm, Err(Error::DuplicatedKey(1))));
```


# License

MPL-2.0
(c) Matthias Beyer