pub struct TextSegment {
pub span: TextLayoutSpan,
pub kind: TextSegmentKind,
}Expand description
๐ ๐งฑ A semantic text segment used for wrapping.
๐ text/layout::TextSegment
๐ฆ size_of::<TextSegment>() == 16 bytes / 128 bits
โ๏ธOption<T> ๐ฐ T
Fieldsยง
ยงspan: TextLayoutSpanCovered symbol range and whole-segment inline extent.
kind: TextSegmentKindSegment behavior during wrapping.
Implementationsยง
Sourceยงimpl TextSegment
impl TextSegment
Sourcepub const fn new(span: TextLayoutSpan, kind: TextSegmentKind) -> Self
pub const fn new(span: TextLayoutSpan, kind: TextSegmentKind) -> Self
Creates a text segment.
Sourcepub const fn box_from_prim(start: u32, end: u32, units: TextUnit) -> Self
pub const fn box_from_prim(start: u32, end: u32, units: TextUnit) -> Self
Creates a box segment from primitive indices and units.
Sourcepub const fn glue_from_prim(start: u32, end: u32, units: TextUnit) -> Self
pub const fn glue_from_prim(start: u32, end: u32, units: TextUnit) -> Self
Creates a glue segment from primitive indices and units.
Sourcepub const fn hard_break_from_prim(start: u32, end: u32) -> Self
pub const fn hard_break_from_prim(start: u32, end: u32) -> Self
Creates a hard-break segment from primitive indices.
Sourcepub const fn is_hard_break(self) -> bool
pub const fn is_hard_break(self) -> bool
Returns whether this segment is a hard break.
Sourcepub const fn segments_from_chars(text: &str, out: &mut [TextSegment]) -> usize
pub const fn segments_from_chars(text: &str, out: &mut [TextSegment]) -> usize
Fills out with simple paragraph-oriented segments derived from chars.
Current policy:
- contiguous non-whitespace chars become
TextSegmentKind::Box - contiguous inline whitespace becomes one
TextSegmentKind::Glue \nand\r\nbecomeTextSegmentKind::HardBreak
Returns the initialized prefix length.
Trait Implementationsยง
Sourceยงimpl Clone for TextSegment
impl Clone for TextSegment
Sourceยงfn clone(&self) -> TextSegment
fn clone(&self) -> TextSegment
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) ยท Sourceยงfn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSourceยงimpl ConstInit for TextSegment
impl ConstInit for TextSegment
impl Copy for TextSegment
Sourceยงimpl Debug for TextSegment
impl Debug for TextSegment
impl Eq for TextSegment
Sourceยงimpl Hash for TextSegment
impl Hash for TextSegment
Sourceยงimpl PartialEq for TextSegment
impl PartialEq for TextSegment
impl StructuralPartialEq for TextSegment
Auto Trait Implementationsยง
impl Freeze for TextSegment
impl RefUnwindSafe for TextSegment
impl Send for TextSegment
impl Sync for TextSegment
impl Unpin for TextSegment
impl UnsafeUnpin for TextSegment
impl UnwindSafe for TextSegment
Blanket Implementationsยง
Sourceยงimpl<T> AnyExt for T
impl<T> AnyExt for T
Sourceยงfn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
Returns a deterministic hash of the
TypeId of Self using a custom hasher.Sourceยงfn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
Sourceยงfn as_any_box(self: Box<Self>) -> Box<dyn Any>where
Self: Sized,
fn as_any_box(self: Box<Self>) -> Box<dyn Any>where
Self: Sized,
Available on crate feature
alloc only.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> ByteSized for T
impl<T> ByteSized for T
Sourceยงconst BYTE_ALIGN: usize = _
const BYTE_ALIGN: usize = _
The alignment of this type in bytes.
Sourceยงfn byte_align(&self) -> usize
fn byte_align(&self) -> usize
Returns the alignment of this type in bytes.
Sourceยงfn ptr_size_ratio(&self) -> [usize; 2]
fn ptr_size_ratio(&self) -> [usize; 2]
Sourceยงimpl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Sourceยงimpl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Sourceยงimpl<T> MemExt for Twhere
T: ?Sized,
impl<T> MemExt for Twhere
T: ?Sized,
Sourceยงconst NEEDS_DROP: bool = _
const NEEDS_DROP: bool = _
Know whether dropping values of this type matters, in compile-time.
Sourceยงfn mem_align_of<T>() -> usize
fn mem_align_of<T>() -> usize
Returns the minimum alignment of the type in bytes. Read more
Sourceยงfn mem_align_of_val(&self) -> usize
fn mem_align_of_val(&self) -> usize
Returns the alignment of the pointed-to value in bytes. Read more
Sourceยงfn mem_size_of<T>() -> usize
fn mem_size_of<T>() -> usize
Returns the size of a type in bytes. Read more
Sourceยงfn mem_size_of_val(&self) -> usize
fn mem_size_of_val(&self) -> usize
Returns the size of the pointed-to value in bytes. Read more
Sourceยงfn mem_needs_drop(&self) -> bool
fn mem_needs_drop(&self) -> bool
Returns
true if dropping values of this type matters. Read moreSourceยงfn mem_forget(self)where
Self: Sized,
fn mem_forget(self)where
Self: Sized,
Forgets about
self without running its destructor. Read moreSourceยงfn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
Sourceยงunsafe fn mem_zeroed<T>() -> T
unsafe fn mem_zeroed<T>() -> T
Available on crate feature
unsafe_layout only.Returns the value of type
T represented by the all-zero byte-pattern. Read moreSourceยงunsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
Available on crate feature
unsafe_layout only.Returns the value of type
T represented by the all-zero byte-pattern. Read moreSourceยงfn mem_as_bytes(&self) -> &[u8] โ
fn mem_as_bytes(&self) -> &[u8] โ
Available on crate feature
unsafe_slice only.