Skip to content

Expose the hasher algorithm and type aliases for HashMap, HashSet and BuildHasher #9

Closed
@hcpl

Description

@hcpl

As I understand the purpose of this crate, the only thing that is different from std::collections::Hash{Map, Set} and other hash-based data structures from other crates is a different hasher. If that is not true, then what I'm saying below is unapplicable, so feel free to close.

The goal is to eliminate the need to maintain a separate Hash{Map, Set} and also reuse impls for Hash{Map, Set} defined in other crates (provided that they are generic over the hasher) so that we don't have to provide them either.

For example, that's how both fxhash and fnv do:

This is technically a breaking change since the semantics of hashbrown::HashMap and hashbrown::HashSet might be altered in some ways (that I don't know of, unfortunately).

Solving this issue will help solving https://github.com/Amanieu/hashbrown/issues/6 as well.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions