Cargo Features

[dependencies]
cow_hashbrown = { version = "0.14.21", default-features = false, features = ["nightly", "rustc-internal-api", "rustc-dep-of-std", "raw", "default-hasher", "inline-more", "rayon", "serde", "rkyv", "borsh", "allocator-api2", "equivalent"] }
default = allocator-api2, default-hasher, equivalent, inline-more

These default features are set whenever cow_hashbrown is added without default-features = false somewhere in the dependency tree.

nightly rustc-dep-of-std?

Enables use of nightly features. This is only guaranteed to work on the latest version of nightly Rust.

Enables allocator_api of bumpalo and nightly of optional allocator-api2

Support for allocators that use allocator-api2

rustc-internal-api rustc-dep-of-std?

Enables the RustcEntry API used to provide the standard library's Entry API.

rustc-dep-of-std = alloc, compiler_builtins, core, nightly, rustc-internal-api

Internal feature used when building as part of the standard library.

raw

Enables the RawTable API.

Affects cow_hashbrown::raw, raw::RawIterHash

default-hasher default

Provides a default hasher. Currently this is AHash but this is subject to change in the future. Note that the default hasher does *not* provide HashDoS resistance, unlike the one in the standard library.

Enables ahash

For the default hasher

Affects cow_hashbrown::DefaultHashBuilder

inline-more default

Enables usage of #[inline] on far more functions than by default in this crate. This may lead to a performance increase but often comes at a compile time cost.

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

alloc rustc-dep-of-std?

Enables rustc-std-workspace-alloc

rayon implicit feature

Enables rayon

For external trait impls

Affects cow_hashbrown::raw.rayon, cow_hashbrown::hash_map.rayon

serde implicit feature

Enables serde

serde:

A generic serialization/deserialization framework

rkyv implicit feature

Enables rkyv ^0.7.42

rkyv:

Zero-copy deserialization framework for Rust

borsh implicit feature

Enables borsh

borsh:

Binary Object Representation Serializer for Hashing

core rustc-dep-of-std?

Enables rustc-std-workspace-core

When built as part of libstd

compiler_builtins rustc-dep-of-std?
allocator-api2 default
equivalent default

Enables equivalent

Equivalent trait which can be shared with other hash table implementations.