pub struct BoxCharacterFilter(/* private fields */);Expand description
A struct that holds a boxed CharacterFilter trait object.
BoxCharacterFilter wraps a Box<dyn CharacterFilter + 'static + Send + Sync>, allowing for dynamic dispatch of character filters while ensuring they are thread-safe and have a 'static lifetime.
§Fields
0: Box<dyn CharacterFilter + 'static + Send + Sync>:- The boxed character filter trait object, which can be any type that implements the
CharacterFiltertrait. This allows for runtime polymorphism, meaning different character filter implementations can be stored in the same collection or passed around generically.
- The boxed character filter trait object, which can be any type that implements the
§Trait Bounds
CharacterFilter: The wrapped object must implement theCharacterFiltertrait, which defines the interface for applying filters to text.'static: The wrapped object must have a'staticlifetime, meaning it can live for the duration of the program and does not borrow from temporary data.SendandSync: These bounds ensure the filter can be shared between threads and sent across thread boundaries, making it safe for concurrent use.
§Example Usage
BoxCharacterFilter allows you to store and use different types of character filters dynamically, making it easier to apply multiple filters without needing to know their concrete types at compile time.
Trait Implementations§
Source§impl Deref for BoxCharacterFilter
impl Deref for BoxCharacterFilter
Source§type Target = dyn CharacterFilter
type Target = dyn CharacterFilter
The resulting type after dereferencing.
Source§fn deref(&self) -> &dyn CharacterFilter
fn deref(&self) -> &dyn CharacterFilter
Dereferences the value.
Source§impl<T: CharacterFilter> From<T> for BoxCharacterFilter
impl<T: CharacterFilter> From<T> for BoxCharacterFilter
Source§fn from(character_filter: T) -> BoxCharacterFilter
fn from(character_filter: T) -> BoxCharacterFilter
Converts to this type from the input type.
Auto Trait Implementations§
impl !RefUnwindSafe for BoxCharacterFilter
impl !UnwindSafe for BoxCharacterFilter
impl Freeze for BoxCharacterFilter
impl Send for BoxCharacterFilter
impl Sync for BoxCharacterFilter
impl Unpin for BoxCharacterFilter
impl UnsafeUnpin for BoxCharacterFilter
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
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 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>
Returns the layout of the type.
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
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.