use crate::common::{PhraseLength, Punctuation, Stopwords, Text};
pub enum RakeParams<'a> {
WithDefaults(Text<'a>, Stopwords<'a>),
WithDefaultsAndPhraseLength(Text<'a>, Stopwords<'a>, PhraseLength),
All(Text<'a>, Stopwords<'a>, Punctuation<'a>, PhraseLength),
}
impl<'a> RakeParams<'a> {
pub fn get_rake_params(self) -> (Text<'a>, Stopwords<'a>, Punctuation<'a>, PhraseLength) {
match self {
RakeParams::WithDefaults(text, stop_words) => (text, stop_words, None, None),
RakeParams::WithDefaultsAndPhraseLength(text, stop_words, phrase_length) => {
(text, stop_words, None, phrase_length)
}
RakeParams::All(text, stop_words, punctuation, phrase_length) => {
(text, stop_words, punctuation, phrase_length)
}
}
}
}