+#[cfg(all(feature = "std", not(feature = "hashbrown")))]
+/// A re-export of [`std::collections::hash_map`] for raw access.
+///
+/// If the `hashbrown` feature gets enabled, this will become an export of `hashbrown::hash_map`.
+///
+/// As with [`RawMap`][crate::RawMap], this is exposed for compatibility reasons, since features
+/// are supposed to be additive. This *is* imperfect, since the two modules are incompatible in a
+/// few places (e.g. hashbrown’s entry types have an extra generic parameter), but it’s close, and
+/// much too useful to give up the whole concept.
+pub use std::collections::hash_map as raw_hash_map;
+
+#[cfg(feature = "hashbrown")]
+/// A re-export of [`hashbrown::hash_map`] for raw access.
+///
+/// If the `hashbrown` feature was disabled, this would become an export of
+/// `std::collections::hash_map`.
+///
+/// As with [`RawMap`][crate::RawMap], this is exposed for compatibility reasons, since features
+/// are supposed to be additive. This *is* imperfect, since the two modules are incompatible in a
+/// few places (e.g. hashbrown’s entry types have an extra generic parameter), but it’s close, and
+/// much too useful to give up the whole concept.
+pub use hashbrown::hash_map as raw_hash_map;
+
+use self::raw_hash_map::HashMap;
+