Struct icu_collator::provider::CollationMetadataV1

source ·
pub struct CollationMetadataV1 {
    pub bits: u32,
}
Expand description

Each non-alias collation that the data provider knows about explicitly has an data entry at least for this struct.

🚧 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.

Fields§

§bits: u32

See the mask constants in the impl block for the bit layout. The other bits are ignored: They could be from the future if their semantics such that old code may ignore them.

Note: At present, it’s bogus for the bit for “upper first” to be set if “case first” isn’t also set. However, the methods handle this case gracefully, so there is no need for invariant validation.

Implementations§

source§

impl CollationMetadataV1

source

const MAX_VARIABLE_MASK: u32 = 3u32

source

const TAILORED_MASK: u32 = 8u32

source

const TAILORED_DIACRITICS_MASK: u32 = 16u32

source

const REORDERING_MASK: u32 = 32u32

source

const LITHUANIAN_DOT_ABOVE_MASK: u32 = 64u32

source

const BACWARD_SECOND_LEVEL_MASK: u32 = 128u32

source

const ALTERNATE_SHIFTED_MASK: u32 = 256u32

source

const CASE_FIRST_MASK: u32 = 512u32

source

const UPPER_FIRST_MASK: u32 = 1_024u32

source

pub(crate) fn max_variable(&self) -> MaxVariable

source

pub(crate) fn tailored(&self) -> bool

source

pub(crate) fn tailored_diacritics(&self) -> bool

Vietnamese and Ewe

source

pub(crate) fn lithuanian_dot_above(&self) -> bool

Lithuanian

source

pub(crate) fn backward_second_level(&self) -> bool

Canadian French

source

pub(crate) fn reordering(&self) -> bool

source

pub(crate) fn alternate_shifted(&self) -> bool

Thai

source

pub(crate) fn case_first(&self) -> CaseFirst

Trait Implementations§

source§

impl Clone for CollationMetadataV1

source§

fn clone(&self) -> CollationMetadataV1

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 CollationMetadataV1

source§

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

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

impl PartialEq for CollationMetadataV1

source§

fn eq(&self, other: &CollationMetadataV1) -> 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<'a> Yokeable<'a> for CollationMetadataV1
where Self: Sized,

source§

type Output = CollationMetadataV1

This type MUST be Self with the 'static replaced with 'a, i.e. Self<'a>
source§

fn transform(&self) -> &Self::Output

This method must cast self between &'a Self<'static> and &'a Self<'a>. Read more
source§

fn transform_owned(self) -> Self::Output

This method must cast self between Self<'static> and Self<'a>. Read more
source§

unsafe fn make(this: Self::Output) -> Self

This method can be used to cast away Self<'a>’s lifetime. Read more
source§

fn transform_mut<F>(&'a mut self, f: F)
where F: 'static + for<'b> FnOnce(&'b mut Self::Output),

This method must cast self between &'a mut Self<'static> and &'a mut Self<'a>, and pass it to f. Read more
source§

impl<'zf> ZeroFrom<'zf, CollationMetadataV1> for CollationMetadataV1

source§

fn zero_from(this: &'zf Self) -> Self

Clone the other C into a struct that may retain references into C.
source§

impl Copy for CollationMetadataV1

source§

impl StructuralPartialEq for CollationMetadataV1

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, 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, 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