pub struct PluralRulesData<'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 PluralRulesData<'data>
impl<'data> Bake for PluralRulesData<'data>
Source§fn bake(&self, env: &CrateEnv) -> TokenStream
fn bake(&self, env: &CrateEnv) -> TokenStream
Source§impl<'data> BakeSize for PluralRulesData<'data>
impl<'data> BakeSize for PluralRulesData<'data>
Source§fn borrows_size(&self) -> usize
fn borrows_size(&self) -> usize
Returns the size
Source§impl<'data> Clone for PluralRulesData<'data>
impl<'data> Clone for PluralRulesData<'data>
Source§fn clone(&self) -> PluralRulesData<'data>
fn clone(&self) -> PluralRulesData<'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 PluralRulesData<'data>
impl<'data> Debug for PluralRulesData<'data>
Source§impl<'data> Default for PluralRulesData<'data>
impl<'data> Default for PluralRulesData<'data>
Source§fn default() -> PluralRulesData<'data>
fn default() -> PluralRulesData<'data>
Returns the “default value” for a type. Read more
Source§impl<'de: 'data, 'data> Deserialize<'de> for PluralRulesData<'data>
impl<'de: 'data, 'data> Deserialize<'de> for PluralRulesData<'data>
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl MaybeAsVarULE for PluralRulesData<'_>
impl MaybeAsVarULE for PluralRulesData<'_>
Source§type EncodedStruct = [()]
type EncodedStruct = [()]
The [
VarULE
] type for this data struct, or [()]
if it cannot be represented as [VarULE
].Source§impl MaybeEncodeAsVarULE for PluralRulesData<'_>
impl MaybeEncodeAsVarULE for PluralRulesData<'_>
Source§fn maybe_encode_as_varule(&self) -> Option<&Self::EncodedStruct>
fn maybe_encode_as_varule(&self) -> Option<&Self::EncodedStruct>
Returns the [
MaybeAsVarULE::EncodedStruct
] that represents this data struct,
or None
if the data struct does not support this representation.Source§impl<'data> PartialEq for PluralRulesData<'data>
impl<'data> PartialEq for PluralRulesData<'data>
Source§impl<'data> Serialize for PluralRulesData<'data>
impl<'data> Serialize for PluralRulesData<'data>
Source§impl<'a> Yokeable<'a> for PluralRulesData<'static>
impl<'a> Yokeable<'a> for PluralRulesData<'static>
Source§type Output = PluralRulesData<'a>
type Output = PluralRulesData<'a>
This type MUST be
Self
with the 'static
replaced with 'a
, i.e. Self<'a>
Source§fn transform_owned(self) -> Self::Output
fn transform_owned(self) -> Self::Output
Source§unsafe fn make(this: Self::Output) -> Self
unsafe fn make(this: Self::Output) -> Self
This method can be used to cast away
Self<'a>
’s lifetime. Read moreSource§fn transform_mut<F>(&'a mut self, f: F)where
F: 'static + for<'b> FnOnce(&'b mut Self::Output),
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 moreSource§impl<'zf, 'zf_inner> ZeroFrom<'zf, PluralRulesData<'zf_inner>> for PluralRulesData<'zf>
impl<'zf, 'zf_inner> ZeroFrom<'zf, PluralRulesData<'zf_inner>> for PluralRulesData<'zf>
Source§fn zero_from(this: &'zf PluralRulesData<'zf_inner>) -> Self
fn zero_from(this: &'zf PluralRulesData<'zf_inner>) -> Self
Clone the other
C
into a struct that may retain references into C
.impl<'data> StructuralPartialEq for PluralRulesData<'data>
Auto Trait Implementations§
impl<'data> Freeze for PluralRulesData<'data>
impl<'data> RefUnwindSafe for PluralRulesData<'data>
impl<'data> Send for PluralRulesData<'data>
impl<'data> Sync for PluralRulesData<'data>
impl<'data> Unpin for PluralRulesData<'data>
impl<'data> UnwindSafe for PluralRulesData<'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§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