pub struct Flat {
pub text: SharedString,
pub runs: Vec<TextRun>,
pub links: Vec<(Range<usize>, String)>,
pub code: Vec<Range<usize>>,
pub washes: Vec<(Range<usize>, Hsla)>,
pub mentions: Vec<Mention>,
pub shown: Shown,
}Expand description
Inline content flattened for shaping: one string, its runs, and the ranges that need painting underneath (link clicks, inline-code washes, mentions).
Self::text is the Text with every mention replaced by what it shows,
so every range here is in its offsets; Self::shown maps the two.
Fields§
§text: SharedString§runs: Vec<TextRun>§links: Vec<(Range<usize>, String)>§code: Vec<Range<usize>>§washes: Vec<(Range<usize>, Hsla)>Each run of a crate::MarkPaint::background, painted over the
selection.
mentions: Vec<Mention>§shown: ShownAuto Trait Implementations§
impl !Send for Flat
impl !Sync for Flat
impl Freeze for Flat
impl RefUnwindSafe for Flat
impl Unpin for Flat
impl UnsafeUnpin for Flat
impl UnwindSafe for Flat
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> 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 more