#random #chinese #generator #fastrand #localization #logograms

chinese-rand

使用 Rust 生成中文数据结构的随机实例

3 个版本

0.1.2 2024年6月3日
0.1.1 2024年5月31日
0.1.0 2024年5月22日

#521 in 数据结构

MIT 许可证

39KB
275

chinese-rand

使用 Rust 生成中文数据结构的随机实例

CI Crates.io Version

此包旨在实例化实现 ChineseFormat 特性的数据结构,由 chinese_format 提供。

核心概念是 ChineseFormatGenerator 结构体,可以通过传递实现 RawGenerator 特性的对象来实例化

use chinese_format::{ChineseFormat, Fraction, Variant};
use chinese_rand::*;

fn main() -> GenericResult<()> {
    let generator = ChineseFormatGenerator::new(FastRandGenerator::new());

    // Now setting the random seed just in order to
    //predict the generated values
    fastrand::seed(90);

    let fraction: Fraction = generator.fraction(1..=10, 1..=10)?;

    let chinese = fraction.to_chinese(Variant::Simplified);

    assert_eq!(chinese, "六分之七");

    Ok(())
}

特性

  • fastrand:启用基于 fastrandFastRandGenerator,默认启用。

  • digit-sequence:启用基于 DigitSequence 的数据类型(如 Decimal)的随机生成。

  • currency:启用 currency 模块中的数据类型的随机生成。

  • gregorian:启用 gregorian 模块中数据类型的随机生成,该模块专门用于日期和时间。

    同时启用digit-sequence

Crates.io

https://crates.io/crates/chinese-rand

文档

https://docs.rs/chinese-rand

许可证

MIT

依赖项

~380KB