pub struct ShapedTextSlicer {
current_glyph_offset: usize,
current_character_offset: usize,
shaped_text: Arc<ShapedText>,
}Expand description
A data structure used to efficiently slice up a ShapedText into ShapedTextSlices.
Fields§
§current_glyph_offset: usize§current_character_offset: usize§shaped_text: Arc<ShapedText>Implementations§
Source§impl ShapedTextSlicer
impl ShapedTextSlicer
pub fn new(shaped_text: Arc<ShapedText>) -> Self
Sourcepub fn slice_until_character_offset(
&mut self,
desired_character_offset: usize,
slice_type: ShapedTextSliceType,
) -> Option<Arc<ShapedTextSlice>>
pub fn slice_until_character_offset( &mut self, desired_character_offset: usize, slice_type: ShapedTextSliceType, ) -> Option<Arc<ShapedTextSlice>>
Given a desired character offset, consume glyphs until that character offset
is reached (inclusive of glyphs that come from zero characters). Return those
glyphs as a ShapedTextSlice tagged with the given whitespace-related
properties. Returns None if the resulting slice would not hold any glyphs.
Auto Trait Implementations§
impl Freeze for ShapedTextSlicer
impl RefUnwindSafe for ShapedTextSlicer
impl Send for ShapedTextSlicer
impl Sync for ShapedTextSlicer
impl Unpin for ShapedTextSlicer
impl UnsafeUnpin for ShapedTextSlicer
impl UnwindSafe for ShapedTextSlicer
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
Source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
Source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
Source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert