Struct TextUnit

Source
pub struct TextUnit(/* private fields */);
Expand description

An offset into text. Offset is represented as u32 storing number of utf8-bytes, but most of the clients should treat it like opaque measure.

Implementations§

Source§

impl TextUnit

Source

pub fn of_char(c: char) -> TextUnit

TextUnit equal to the length of this char.

Source

pub fn of_str(s: &str) -> TextUnit

TextUnit equal to the length of this string.

§Panics

Panics if the length of the string is greater than u32::max_value()

Source

pub fn checked_sub(self, other: TextUnit) -> Option<TextUnit>

Source

pub fn from_usize(size: usize) -> TextUnit

Source

pub fn to_usize(self) -> usize

Trait Implementations§

Source§

impl<'a, 'b> Add<&'a TextUnit> for &'b TextRange

Source§

type Output = TextRange

The resulting type after applying the + operator.
Source§

fn add(self, rhs: &'a TextUnit) -> TextRange

Performs the + operation. Read more
Source§

impl<'a, 'b> Add<&'a TextUnit> for &'b TextUnit

Source§

type Output = TextUnit

The resulting type after applying the + operator.
Source§

fn add(self, rhs: &'a TextUnit) -> TextUnit

Performs the + operation. Read more
Source§

impl<'a> Add<&'a TextUnit> for TextRange

Source§

type Output = TextRange

The resulting type after applying the + operator.
Source§

fn add(self, rhs: &'a TextUnit) -> TextRange

Performs the + operation. Read more
Source§

impl<'a> Add<&'a TextUnit> for TextUnit

Source§

type Output = TextUnit

The resulting type after applying the + operator.
Source§

fn add(self, rhs: &'a TextUnit) -> TextUnit

Performs the + operation. Read more
Source§

impl<'a> Add<TextUnit> for &'a TextRange

Source§

type Output = TextRange

The resulting type after applying the + operator.
Source§

fn add(self, rhs: TextUnit) -> TextRange

Performs the + operation. Read more
Source§

impl<'a> Add<TextUnit> for &'a TextUnit

Source§

type Output = TextUnit

The resulting type after applying the + operator.
Source§

fn add(self, rhs: TextUnit) -> TextUnit

Performs the + operation. Read more
Source§

impl Add<TextUnit> for TextRange

Source§

type Output = TextRange

The resulting type after applying the + operator.
Source§

fn add(self, rhs: TextUnit) -> TextRange

Performs the + operation. Read more
Source§

impl Add for TextUnit

Source§

type Output = TextUnit

The resulting type after applying the + operator.
Source§

fn add(self, rhs: TextUnit) -> TextUnit

Performs the + operation. Read more
Source§

impl<'a> AddAssign<&'a TextUnit> for TextRange

Source§

fn add_assign(&mut self, rhs: &'a TextUnit)

Performs the += operation. Read more
Source§

impl<'a> AddAssign<&'a TextUnit> for TextUnit

Source§

fn add_assign(&mut self, rhs: &'a TextUnit)

Performs the += operation. Read more
Source§

impl AddAssign<TextUnit> for TextRange

Source§

fn add_assign(&mut self, rhs: TextUnit)

Performs the += operation. Read more
Source§

impl AddAssign for TextUnit

Source§

fn add_assign(&mut self, rhs: TextUnit)

Performs the += operation. Read more
Source§

impl Clone for TextUnit

Source§

fn clone(&self) -> TextUnit

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for TextUnit

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl Default for TextUnit

Source§

fn default() -> TextUnit

Returns the “default value” for a type. Read more
Source§

impl Display for TextUnit

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl From<u32> for TextUnit

Source§

fn from(tu: u32) -> TextUnit

Converts to this type from the input type.
Source§

impl Hash for TextUnit

Source§

fn hash<__H>(&self, state: &mut __H)
where __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Ord for TextUnit

Source§

fn cmp(&self, other: &TextUnit) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for TextUnit

Source§

fn eq(&self, other: &TextUnit) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialOrd for TextUnit

Source§

fn partial_cmp(&self, other: &TextUnit) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl RangeBounds<TextUnit> for TextRange

Source§

fn start_bound(&self) -> Bound<&TextUnit>

Start index bound. Read more
Source§

fn end_bound(&self) -> Bound<&TextUnit>

End index bound. Read more
1.35.0 · Source§

fn contains<U>(&self, item: &U) -> bool
where T: PartialOrd<U>, U: PartialOrd<T> + ?Sized,

Returns true if item is contained in the range. Read more
Source§

fn is_empty(&self) -> bool
where T: PartialOrd,

🔬This is a nightly-only experimental API. (range_bounds_is_empty)
Returns true if the range contains no items. One-sided ranges (RangeFrom, etc) always return false. Read more
Source§

impl<'a, 'b> Sub<&'a TextUnit> for &'b TextRange

Source§

type Output = TextRange

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: &'a TextUnit) -> TextRange

Performs the - operation. Read more
Source§

impl<'a, 'b> Sub<&'a TextUnit> for &'b TextUnit

Source§

type Output = TextUnit

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: &'a TextUnit) -> TextUnit

Performs the - operation. Read more
Source§

impl<'a> Sub<&'a TextUnit> for TextRange

Source§

type Output = TextRange

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: &'a TextUnit) -> TextRange

Performs the - operation. Read more
Source§

impl<'a> Sub<&'a TextUnit> for TextUnit

Source§

type Output = TextUnit

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: &'a TextUnit) -> TextUnit

Performs the - operation. Read more
Source§

impl<'a> Sub<TextUnit> for &'a TextRange

Source§

type Output = TextRange

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: TextUnit) -> TextRange

Performs the - operation. Read more
Source§

impl<'a> Sub<TextUnit> for &'a TextUnit

Source§

type Output = TextUnit

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: TextUnit) -> TextUnit

Performs the - operation. Read more
Source§

impl Sub<TextUnit> for TextRange

Source§

type Output = TextRange

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: TextUnit) -> TextRange

Performs the - operation. Read more
Source§

impl Sub for TextUnit

Source§

type Output = TextUnit

The resulting type after applying the - operator.
Source§

fn sub(self, rhs: TextUnit) -> TextUnit

Performs the - operation. Read more
Source§

impl<'a> SubAssign<&'a TextUnit> for TextRange

Source§

fn sub_assign(&mut self, rhs: &'a TextUnit)

Performs the -= operation. Read more
Source§

impl<'a> SubAssign<&'a TextUnit> for TextUnit

Source§

fn sub_assign(&mut self, rhs: &'a TextUnit)

Performs the -= operation. Read more
Source§

impl SubAssign<TextUnit> for TextRange

Source§

fn sub_assign(&mut self, rhs: TextUnit)

Performs the -= operation. Read more
Source§

impl SubAssign for TextUnit

Source§

fn sub_assign(&mut self, rhs: TextUnit)

Performs the -= operation. Read more
Source§

impl<'a> Sum<&'a TextUnit> for TextUnit

Source§

fn sum<I>(iter: I) -> TextUnit
where I: Iterator<Item = &'a TextUnit>,

Takes an iterator and generates Self from the elements by “summing up” the items.
Source§

impl Sum for TextUnit

Source§

fn sum<I>(iter: I) -> TextUnit
where I: Iterator<Item = TextUnit>,

Takes an iterator and generates Self from the elements by “summing up” the items.
Source§

impl Copy for TextUnit

Source§

impl Eq for TextUnit

Source§

impl StructuralPartialEq for TextUnit

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.