Struct icu::casemap::provider::exception_helpers::ExceptionBitsULE

source ·
#[repr(transparent)]
pub struct ExceptionBitsULE(pub u8);
Expand description

The bitflags on an exception header.

Format from icu4c, documented in casepropsbuilder.cpp, shifted 8 bits since ICU4C has this packed alongside a SlotPresence

           0  Double-width slots. If set, then each optional slot is stored as two
              elements of the array (high and low halves of 32-bit values) instead of
              a single element.
           1  Has no simple case folding, even if there is a simple lowercase mapping
          2  The value in the delta slot is negative
          3  Is case-sensitive (not exposed)
      4..5  Dot type
          6  Has conditional special casing
          7  Has conditional case folding

All bits are valid, though in ICU4X data bits 0 and 2 are not used

🚧 This code is considered unstable; it may change at any time, in breaking or non-breaking ways, including in SemVer minor releases. While the serde representation of data structs is guaranteed to be stable, their Rust representation might not be. Use with caution.

Tuple Fields§

§0: u8

Implementations§

source§

impl ExceptionBitsULE

source

pub fn double_width_slots(self) -> bool

Whether or not the slots are double-width.

Unused in ICU4X

source

pub fn no_simple_case_folding(self) -> bool

There is no simple casefolding, even if there is a simple lowercase mapping

source

pub fn negative_delta(self) -> bool

The delta stored in the Delta slot is negative

source

pub fn is_sensitive(self) -> bool

If the character is case sensitive

source

pub fn has_conditional_special(self) -> bool

If the character has conditional special casing

source

pub fn has_conditional_fold(self) -> bool

If the character has conditional case folding

source

pub fn dot_type(self) -> DotType

The dot type of the character

Trait Implementations§

source§

impl Clone for ExceptionBitsULE

source§

fn clone(&self) -> ExceptionBitsULE

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 ExceptionBitsULE

source§

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

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

impl PartialEq for ExceptionBitsULE

source§

fn eq(&self, other: &ExceptionBitsULE) -> 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 ULE for ExceptionBitsULE

source§

fn validate_byte_slice(bytes: &[u8]) -> Result<(), UleError>

Validates a byte slice, &[u8]. Read more
source§

fn parse_byte_slice(bytes: &[u8]) -> Result<&[Self], UleError>

Parses a byte slice, &[u8], and return it as &[Self] with the same lifetime. Read more
source§

unsafe fn from_byte_slice_unchecked(bytes: &[u8]) -> &[Self]

Takes a byte slice, &[u8], and return it as &[Self] with the same lifetime, assuming that this byte slice has previously been run through Self::parse_byte_slice() with success. Read more
source§

fn as_byte_slice(slice: &[Self]) -> &[u8]

Given &[Self], returns a &[u8] with the same lifetime. Read more
source§

impl Copy for ExceptionBitsULE

source§

impl Eq for ExceptionBitsULE

source§

impl StructuralPartialEq for ExceptionBitsULE

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, dst: *mut T)

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

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> GetField<T> for T
where T: Copy,

source§

fn get_field(&self) -> T

Returns the value of this trait’s field T.
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> IntoEither for T

source§

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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
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, 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.
source§

impl<T> ErasedDestructor for T
where T: 'static,

source§

impl<T> MaybeSendSync for T
where T: Send + Sync,