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#![allow(unexpected_cfgs)]
9#![cfg_attr(docsrs_1_92, feature(doc_cfg))]
10
11#[cfg(feature = "enum-ordinalize")]
12use enum_ordinalize::Ordinalize;
13
14/// The different writing systems used for the Chinese language. Traditional Chinese (繁體中文) or Simple Chinese (简体中文).
15#[derive(Debug, Copy, Clone, Eq, PartialEq, Hash)]
16#[cfg_attr(feature = "enum-ordinalize", derive(Ordinalize))]
17#[repr(u8)]
18pub enum ChineseVariant {
19    /// 繁體中文。
20    Traditional,
21    /// 简体中文。
22    Simple,
23}
24
25impl ChineseVariant {
26    /// Is this simple?
27    #[inline]
28    pub const fn is_simple(self) -> bool {
29        matches!(self, ChineseVariant::Simple)
30    }
31
32    /// Is this traditional?
33    #[inline]
34    pub const fn is_traditional(self) -> bool {
35        matches!(self, ChineseVariant::Traditional)
36    }
37}