#[cfg(feature = "gxhash")]
type HashSet<T> = std::collections::HashSet<T, gxhash::GxBuildHasher>;
#[cfg(feature = "ahash")]
use ahash::HashSet;
#[cfg(feature = "rustc-hash")]
use rustc_hash::FxHashSet as HashSet;
#[cfg(all(not(feature = "ahash"), not(feature = "gxhash"), not(feature = "rustc-hash")))]
use std::collections::HashSet;
use crate::simple::internal::string_keywords::SplitContext;
impl<K: Ord> crate::simple::SearchIndex<K> {
#[inline]
pub(crate) fn indexable_keywords(
&self,
value: &dyn crate::simple::Indexable
) -> HashSet<kstring::KString> {
let strings = value.strings();
strings
.into_iter()
.flat_map(|string| self.string_keywords(&string, &SplitContext::Indexing))
.collect()
} }