Struct icu::plurals::provider::PluralRulesV1
source · pub struct PluralRulesV1<'data> {
pub zero: Option<Rule<'data>>,
pub one: Option<Rule<'data>>,
pub two: Option<Rule<'data>>,
pub few: Option<Rule<'data>>,
pub many: Option<Rule<'data>>,
}
Expand description
Plural rule strings conforming to UTS 35 syntax. Includes separate fields for five of the six standard plural forms. If none of the rules match, the “other” category is assumed.
More information: https://unicode.org/reports/tr35/tr35-numbers.html#Language_Plural_Rules
🚧 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§
§zero: Option<Rule<'data>>
Rule that matches PluralCategory::Zero
, or None
if not present.
one: Option<Rule<'data>>
Rule that matches PluralCategory::One
, or None
if not present.
two: Option<Rule<'data>>
Rule that matches PluralCategory::Two
, or None
if not present.
few: Option<Rule<'data>>
Rule that matches PluralCategory::Few
, or None
if not present.
many: Option<Rule<'data>>
Rule that matches PluralCategory::Many
, or None
if not present.
Trait Implementations§
source§impl<'data> Bake for PluralRulesV1<'data>
impl<'data> Bake for PluralRulesV1<'data>
source§fn bake(&self, env: &CrateEnv) -> TokenStream
fn bake(&self, env: &CrateEnv) -> TokenStream
source§impl<'data> BakeSize for PluralRulesV1<'data>
impl<'data> BakeSize for PluralRulesV1<'data>
source§fn borrows_size(&self) -> usize
fn borrows_size(&self) -> usize
Returns the size
source§impl<'data> Clone for PluralRulesV1<'data>
impl<'data> Clone for PluralRulesV1<'data>
source§fn clone(&self) -> PluralRulesV1<'data>
fn clone(&self) -> PluralRulesV1<'data>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<'data> Debug for PluralRulesV1<'data>
impl<'data> Debug for PluralRulesV1<'data>
source§impl<'data> Default for PluralRulesV1<'data>
impl<'data> Default for PluralRulesV1<'data>
source§fn default() -> PluralRulesV1<'data>
fn default() -> PluralRulesV1<'data>
Returns the “default value” for a type. Read more
source§impl<'de, 'data> Deserialize<'de> for PluralRulesV1<'data>where
'de: 'data,
impl<'de, 'data> Deserialize<'de> for PluralRulesV1<'data>where
'de: 'data,
source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<PluralRulesV1<'data>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<PluralRulesV1<'data>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl<'data> PartialEq for PluralRulesV1<'data>
impl<'data> PartialEq for PluralRulesV1<'data>
source§impl<'data> Serialize for PluralRulesV1<'data>
impl<'data> Serialize for PluralRulesV1<'data>
source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
source§impl<'a> Yokeable<'a> for PluralRulesV1<'static>
impl<'a> Yokeable<'a> for PluralRulesV1<'static>
source§type Output = PluralRulesV1<'a>
type Output = PluralRulesV1<'a>
This type MUST be
Self
with the 'static
replaced with 'a
, i.e. Self<'a>
source§fn transform_owned(self) -> <PluralRulesV1<'static> as Yokeable<'a>>::Output
fn transform_owned(self) -> <PluralRulesV1<'static> as Yokeable<'a>>::Output
source§unsafe fn make(
this: <PluralRulesV1<'static> as Yokeable<'a>>::Output,
) -> PluralRulesV1<'static>
unsafe fn make( this: <PluralRulesV1<'static> as Yokeable<'a>>::Output, ) -> PluralRulesV1<'static>
This method can be used to cast away
Self<'a>
’s lifetime. Read moresource§fn transform_mut<F>(&'a mut self, f: F)
fn transform_mut<F>(&'a mut self, f: F)
This method must cast
self
between &'a mut Self<'static>
and &'a mut Self<'a>
,
and pass it to f
. Read moresource§impl<'zf, 'zf_inner> ZeroFrom<'zf, PluralRulesV1<'zf_inner>> for PluralRulesV1<'zf>
impl<'zf, 'zf_inner> ZeroFrom<'zf, PluralRulesV1<'zf_inner>> for PluralRulesV1<'zf>
source§fn zero_from(this: &'zf PluralRulesV1<'zf_inner>) -> PluralRulesV1<'zf>
fn zero_from(this: &'zf PluralRulesV1<'zf_inner>) -> PluralRulesV1<'zf>
Clone the other
C
into a struct that may retain references into C
.impl<'data> StructuralPartialEq for PluralRulesV1<'data>
Auto Trait Implementations§
impl<'data> Freeze for PluralRulesV1<'data>
impl<'data> RefUnwindSafe for PluralRulesV1<'data>
impl<'data> Send for PluralRulesV1<'data>
impl<'data> Sync for PluralRulesV1<'data>
impl<'data> Unpin for PluralRulesV1<'data>
impl<'data> UnwindSafe for PluralRulesV1<'data>
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)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 more