pub(crate) struct Wordlist {
pub(crate) words: &'static [&'static str; 2048],
pub(crate) index: &'static phf::Map<&'static str, u16>,
}
pub(crate) trait WordlistProvider: Sized {
fn wordlist() -> &'static Wordlist;
}
pub(crate) mod wordlists {
pub(crate) mod english {
include!(concat!(env!("OUT_DIR"), "/bip0039_wordlist_english.rs"));
}
#[cfg(feature = "chinese-simplified")]
pub(crate) mod chinese_simplified {
include!(concat!(env!("OUT_DIR"), "/bip0039_wordlist_chinese_simplified.rs"));
}
#[cfg(feature = "chinese-traditional")]
pub(crate) mod chinese_traditional {
include!(concat!(env!("OUT_DIR"), "/bip0039_wordlist_chinese_traditional.rs"));
}
#[cfg(feature = "czech")]
pub(crate) mod czech {
include!(concat!(env!("OUT_DIR"), "/bip0039_wordlist_czech.rs"));
}
#[cfg(feature = "french")]
pub(crate) mod french {
include!(concat!(env!("OUT_DIR"), "/bip0039_wordlist_french.rs"));
}
#[cfg(feature = "italian")]
pub(crate) mod italian {
include!(concat!(env!("OUT_DIR"), "/bip0039_wordlist_italian.rs"));
}
#[cfg(feature = "japanese")]
pub(crate) mod japanese {
include!(concat!(env!("OUT_DIR"), "/bip0039_wordlist_japanese.rs"));
}
#[cfg(feature = "korean")]
pub(crate) mod korean {
include!(concat!(env!("OUT_DIR"), "/bip0039_wordlist_korean.rs"));
}
#[cfg(feature = "portuguese")]
pub(crate) mod portuguese {
include!(concat!(env!("OUT_DIR"), "/bip0039_wordlist_portuguese.rs"));
}
#[cfg(feature = "spanish")]
pub(crate) mod spanish {
include!(concat!(env!("OUT_DIR"), "/bip0039_wordlist_spanish.rs"));
}
}