pub struct MappingCharacterFilter { /* private fields */ }Implementations§
Source§impl MappingCharacterFilter
impl MappingCharacterFilter
Sourcepub fn new(mapping: HashMap<String, String>) -> LinderaResult<Self>
pub fn new(mapping: HashMap<String, String>) -> LinderaResult<Self>
Create a new MappingCharacterFilter from a surface-to-replacement mapping.
§Arguments
mapping- A map from surface text to its replacement text. Keys must be non-empty; an empty key would match at every byte position under the leftmost-longest search strategy used byapply, which is never a meaningful mapping and is therefore rejected.
§Returns
A MappingCharacterFilter, or an error if mapping contains an empty key or
the underlying Aho-Corasick automaton fails to build.
pub fn from_config(config: &MappingCharacterFilterConfig) -> LinderaResult<Self>
Trait Implementations§
Source§impl CharacterFilter for MappingCharacterFilter
impl CharacterFilter for MappingCharacterFilter
Source§fn apply(&self, text: &mut String) -> LinderaResult<OffsetMapping>
fn apply(&self, text: &mut String) -> LinderaResult<OffsetMapping>
Apply the filter using the OffsetMapping API.
Performs a single leftmost-longest pass over text with the underlying
Aho-Corasick automaton: at each position the longest configured key wins,
matches never overlap, and scanning resumes immediately after each match
(mirroring docs/src/concepts/filters.md’s documented “longest-match
search” semantics for this filter).
§Arguments
text- The text to filter, replaced in place with the mapped text.
§Returns
An OffsetMapping recording one Transformation per replacement whose
byte length differs from the original (length-preserving replacements are
not recorded), in ascending filtered-offset order.
fn name(&self) -> &'static str
Source§impl Clone for MappingCharacterFilter
impl Clone for MappingCharacterFilter
Source§fn clone(&self) -> MappingCharacterFilter
fn clone(&self) -> MappingCharacterFilter
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for MappingCharacterFilter
impl RefUnwindSafe for MappingCharacterFilter
impl Send for MappingCharacterFilter
impl Sync for MappingCharacterFilter
impl Unpin for MappingCharacterFilter
impl UnsafeUnpin for MappingCharacterFilter
impl UnwindSafe for MappingCharacterFilter
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
Source§impl<T> CharacterFilterClone for Twhere
T: CharacterFilter + Clone + 'static,
impl<T> CharacterFilterClone for Twhere
T: CharacterFilter + Clone + 'static,
fn box_clone(&self) -> BoxCharacterFilter
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> ⓘ
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> ⓘ
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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.