pub struct Utf16CodeUnits(pub u32);Expand description
A length or offset counted in 16-bit code units in an UTF-16 string. This type is used to more reliable work with lengths or offsets in different encodings.
Tuple Fields§
§0: u32Implementations§
Source§impl Utf16CodeUnits
impl Utf16CodeUnits
const ZERO: Self
pub fn saturating_sub(self, value: Self) -> Self
pub fn to_usize_range(range: &Range<Self>) -> Range<usize>
Source§impl Utf16CodeUnits
impl Utf16CodeUnits
Sourcepub fn length_of(_: AssumeUnder4GB, string: &str) -> Self
pub fn length_of(_: AssumeUnder4GB, string: &str) -> Self
Returns the length of string in UTF-16 code units
pub fn length_of_char(char: char) -> Self
Sourcepub fn to_utf8_code_units_in(
self,
_: AssumeUnder4GB,
string: &str,
) -> Utf8CodeUnits
pub fn to_utf8_code_units_in( self, _: AssumeUnder4GB, string: &str, ) -> Utf8CodeUnits
Convert this UTF-16 offset in string to an UTF-8 (byte) offset
Sourcepub fn to_utf8_code_units_in_iter<S>(
self,
_: AssumeUnder4GB,
iter: impl IntoIterator<Item = S>,
) -> Utf8CodeUnits
pub fn to_utf8_code_units_in_iter<S>( self, _: AssumeUnder4GB, iter: impl IntoIterator<Item = S>, ) -> Utf8CodeUnits
Convert this UTF-16 offset in an iterator of strings, to an UTF-8 (byte) offset
Sourcepub fn to_utf32_code_units_in(self, string: &str) -> Utf32CodeUnits
pub fn to_utf32_code_units_in(self, string: &str) -> Utf32CodeUnits
Convert this UTF-16 offset in string to an UTF-32 offset
Note: this never overflows since the return value is always less than or equal to self as one UTF-32 code unit corresponds to one or two UTF-16 code units.
Trait Implementations§
Source§impl Add for Utf16CodeUnits
impl Add for Utf16CodeUnits
Source§impl AddAssign for Utf16CodeUnits
impl AddAssign for Utf16CodeUnits
Source§fn add_assign(&mut self, other: Self)
fn add_assign(&mut self, other: Self)
Performs the
+= operation. Read moreSource§impl Clone for Utf16CodeUnits
impl Clone for Utf16CodeUnits
Source§fn clone(&self) -> Utf16CodeUnits
fn clone(&self) -> Utf16CodeUnits
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 Debug for Utf16CodeUnits
Use compact formatting regardless of Formatter::alternate
impl Debug for Utf16CodeUnits
Use compact formatting regardless of Formatter::alternate
Source§impl Default for Utf16CodeUnits
impl Default for Utf16CodeUnits
Source§fn default() -> Utf16CodeUnits
fn default() -> Utf16CodeUnits
Returns the “default value” for a type. Read more
Source§impl From<Utf16CodeUnits> for usize
impl From<Utf16CodeUnits> for usize
Source§fn from(value: Utf16CodeUnits) -> usize
fn from(value: Utf16CodeUnits) -> usize
Converts to this type from the input type.
Source§impl From<u32> for Utf16CodeUnits
impl From<u32> for Utf16CodeUnits
Source§impl MallocSizeOf for Utf16CodeUnits
impl MallocSizeOf for Utf16CodeUnits
Source§fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
Measure the heap usage of all descendant heap-allocated structures, but
not the space taken up by the value itself.
Source§impl Ord for Utf16CodeUnits
impl Ord for Utf16CodeUnits
Source§fn cmp(&self, other: &Utf16CodeUnits) -> Ordering
fn cmp(&self, other: &Utf16CodeUnits) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for Utf16CodeUnits
impl PartialEq for Utf16CodeUnits
Source§fn eq(&self, other: &Utf16CodeUnits) -> bool
fn eq(&self, other: &Utf16CodeUnits) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl PartialOrd for Utf16CodeUnits
impl PartialOrd for Utf16CodeUnits
Source§impl Sub for Utf16CodeUnits
impl Sub for Utf16CodeUnits
Source§impl SubAssign for Utf16CodeUnits
impl SubAssign for Utf16CodeUnits
Source§fn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
Performs the
-= operation. Read moreSource§impl Sum for Utf16CodeUnits
impl Sum for Utf16CodeUnits
impl Copy for Utf16CodeUnits
impl Eq for Utf16CodeUnits
impl StructuralPartialEq for Utf16CodeUnits
Auto Trait Implementations§
impl Freeze for Utf16CodeUnits
impl RefUnwindSafe for Utf16CodeUnits
impl Send for Utf16CodeUnits
impl Sync for Utf16CodeUnits
impl Unpin for Utf16CodeUnits
impl UnsafeUnpin for Utf16CodeUnits
impl UnwindSafe for Utf16CodeUnits
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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