#iso #language #codes #country #currency #localization

isosphere

ISO标准数据类型、辅助工具和相关实用程序的库

2 个版本

0.1.1 2024年4月2日
0.1.0 2023年12月10日

#259金融

Download history

每月 54 次下载

MIT 许可证

300KB
6.5K SLoC

Isosphere

Isosphere crate 是一个 Rust 项目中 ISO 标准数据类型、辅助工具和相关实用程序的库。

此 crate 的创建旨在成为一个全面、准确且功能齐全的 ISO 和类似标准数据的来源,形式直观且易于使用。尽管已经存在一些执行类似功能的其他 crate,但它们都存在某种不足:功能、方法、准确性或一致性。此外,那些现有的 crate 都是孤立的,互不交互,并且大多数都没有得到维护。此 crate 致力于解决所有这些问题。

"Isosphere" 一词是 "ISO" 和 "sphere" 的组合,旨在传达 ISO 数据全方位的概念。也就是说,"ISO 球域中的所有事物"。

项目有一个 路线图,其中列出了计划发布的版本及其相关功能,并指出了根据预期目标当前的状态。

支持通过 Serde 进行序列化和反序列化,以及通过 Utoipa 进行 OpenAPI。

目前提供以下模块

country

country 模块提供 ISO 3166-1 国家及其 alpha2/alpha3/numeric 代码和基本名称。这些国家与根据 ISO 和维基百科正式使用的货币和语言相关。

  • Country - 此枚举表示一个国家,并提供对其属性的访问。这是与国家数据交互的主要方式。

  • CountryCode - 此枚举表示国家代码,以 alpha2/alpha3/numeric 形式表示,适用于序列化和反序列化。

currency

currency》模块提供了ISO 4217货币,包括alpha3/numeric代码和基本名称。这些货币与官方使用它们的国家的相关信息根据ISO和维基百科提供。

  • Currency - 此枚举表示货币,并提供对其属性的访问。这是与货币数据交互的主要方式。

  • CurrencyCode - 此枚举表示货币代码,以alpha3/numeric形式表示,适用于(反)序列化。

language

language》模块提供了ISO 639-1语言,包括alpha2代码和基本名称。这些语言与官方使用它们的国家的相关信息根据维基百科提供(ISO不提供此信息)。

  • Language - 此枚举表示语言,并提供对其属性的访问。这是与语言数据交互的主要方式。

  • LanguageCode - 此枚举表示语言代码,以alpha2形式表示,适用于(反)序列化。

依赖项

~10–13MB
~238K SLoC