pub enum IncrementalRelayoutResult {
GlyphSwap,
LineShift {
affected_item: usize,
delta: f32,
},
PartialReflow {
reflow_from_line: usize,
},
FullRelayout,
}Expand description
Result of an incremental relayout attempt.
Variants§
GlyphSwap
Glyphs changed but advance widths identical — swap in place, no repositioning.
LineShift
Width changed but still fits on same line — shift x_offsets of subsequent items.
Fields
PartialReflow
Line breaks changed — need to reflow from this line onward.
FullRelayout
Cannot do incremental — fall back to full relayout.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for IncrementalRelayoutResult
impl RefUnwindSafe for IncrementalRelayoutResult
impl Send for IncrementalRelayoutResult
impl Sync for IncrementalRelayoutResult
impl Unpin for IncrementalRelayoutResult
impl UnsafeUnpin for IncrementalRelayoutResult
impl UnwindSafe for IncrementalRelayoutResult
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> 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