pub struct PorterStemmer;Expand description
Simplified Porter Stemmer implementation.
This is a streamlined version of the classic Porter Stemmer algorithm, implementing the most common suffix removal rules from Steps 1-5.
§Examples
use aprender::text::stem::{Stemmer, PorterStemmer};
let stemmer = PorterStemmer::new();
// Common suffixes
assert_eq!(stemmer.stem("running").expect("stem should succeed"), "run");
assert_eq!(stemmer.stem("flies").expect("stem should succeed"), "fli");
assert_eq!(stemmer.stem("studying").expect("stem should succeed"), "studi");
// Preserves short words
assert_eq!(stemmer.stem("sky").expect("stem should succeed"), "sky");
assert_eq!(stemmer.stem("is").expect("stem should succeed"), "is");Implementations§
Source§impl PorterStemmer
impl PorterStemmer
Sourcepub fn new() -> PorterStemmer
pub fn new() -> PorterStemmer
Create a new Porter Stemmer.
§Examples
use aprender::text::stem::PorterStemmer;
let stemmer = PorterStemmer::new();Trait Implementations§
Source§impl Clone for PorterStemmer
impl Clone for PorterStemmer
Source§fn clone(&self) -> PorterStemmer
fn clone(&self) -> PorterStemmer
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PorterStemmer
impl Debug for PorterStemmer
Source§impl Default for PorterStemmer
impl Default for PorterStemmer
Source§fn default() -> PorterStemmer
fn default() -> PorterStemmer
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for PorterStemmer
impl RefUnwindSafe for PorterStemmer
impl Send for PorterStemmer
impl Sync for PorterStemmer
impl Unpin for PorterStemmer
impl UnsafeUnpin for PorterStemmer
impl UnwindSafe for PorterStemmer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more