3 个版本
0.1.2 | 2022 年 12 月 25 日 |
---|---|
0.1.1 | 2022 年 12 月 23 日 |
0.1.0 | 2022 年 12 月 13 日 |
#290 在 国际化(i18n)
225KB
1K SLoC
包 codes-un-m49
本包包含联合国 M49 规范的实现。
联合国 M49 或统计用标准国家或区域代码(M 系列第 49 号)是联合国为统计目的使用的区域代码标准,由联合国统计局开发和维护。每个区域代码是一个三位数,可以指代各种地理和政治区域,如大陆和国家。在系统中分配的代码通常在名称更改时不会更改(与 ISO 3166-1 alpha-2 或 ISO 3166-1 alpha-3 不同),而是在国家或区域的领土范围发生重大变化时更改,尽管存在例外。
有关 API 设计的说明,请参阅仓库中的 README。
示例
use codes_un_m49 as M49;
let region = M49::UN_M69_REGION_258;
assert_eq!(region.code(), 258);
assert_eq!(region.name(), "French Polynesia");
assert_eq!(region.kind(), M49::RegionKind::Country);
assert_eq!(region.country_code(), Some("PF"));
// feature = "country_codes"
assert_eq!(parent.country_code(), Some(CountryCode::PF));
let parent = region.parent_code().unwrap();
assert_eq!(parent.code(), 61);
assert_eq!(parent.name(), "Polynesia");
let parent = parent.parent_code().unwrap();
assert_eq!(parent.code(), 9);
assert_eq!(parent.name(), "Oceania");
let parent = parent.parent_code().unwrap();
assert_eq!(parent.code(), 1);
assert_eq!(parent.name(), "World");
特性
默认情况下,仅启用 serde
特性。
serde
- 启用RegionClassificationCode
类型的序列化。country_codes
;如果启用,RegionClassificationCode::country_code
方法返回的值将是来自codes-iso-3166
包的CountryCode
实例,否则返回'static str
。
变更
版本 0.1.2
- 为 codes-common 中的新
build
模块提供支持
版本 0.1.1
- 实现了
Standardized
和FixedLengthCode
特性。
版本 0.1.0
- 初始版本
待办事项
TBD
依赖关系
~7–17MB
~217K SLoC