chinese_variant/
lib.rs

1/*!
2# Chinese Variant
3
4An enum to represent the variants (traditional and simple) of the Chinese Language.
5*/
6
7#![no_std]
8#![cfg_attr(docsrs, feature(doc_auto_cfg))]
9
10#[cfg(feature = "enum-ordinalize")]
11use enum_ordinalize::Ordinalize;
12
13/// The different writing systems used for the Chinese language. Traditional Chinese (繁體中文) or Simple Chinese (简体中文).
14#[derive(Debug, Copy, Clone, Eq, PartialEq, Hash)]
15#[cfg_attr(feature = "enum-ordinalize", derive(Ordinalize))]
16#[repr(u8)]
17pub enum ChineseVariant {
18    /// 繁體中文。
19    Traditional,
20    /// 简体中文。
21    Simple,
22}
23
24impl ChineseVariant {
25    /// Is this simple?
26    #[inline]
27    pub const fn is_simple(self) -> bool {
28        matches!(self, ChineseVariant::Simple)
29    }
30
31    /// Is this traditional?
32    #[inline]
33    pub const fn is_traditional(self) -> bool {
34        matches!(self, ChineseVariant::Traditional)
35    }
36}