#standard #codes #representing #iso #reporting #agency #agencies

codes-agency

本软件包提供代表标准机构的通用代码。

9 个版本

0.1.9 2022 年 12 月 25 日
0.1.8 2022 年 12 月 22 日
0.1.2 2022 年 11 月 30 日

Rust 模式 中排名 893

Download history 1211/week @ 2024-03-14 1770/week @ 2024-03-21 1888/week @ 2024-03-28 1576/week @ 2024-04-04 2126/week @ 2024-04-11 1192/week @ 2024-04-18 693/week @ 2024-04-25 679/week @ 2024-05-02 1503/week @ 2024-05-09 1479/week @ 2024-05-16 1063/week @ 2024-05-23 1024/week @ 2024-05-30 1025/week @ 2024-06-06 857/week @ 2024-06-13 826/week @ 2024-06-20 944/week @ 2024-06-27

每月下载量 3,783
14 个软件包中(直接使用 10 个)使用

MIT 许可证

39KB
733 行代码(不含注释)

软件包 codes-agency

本软件包提供代表标准机构的通用代码。

crates.io docs.rs

两个核心类型 [Agency] 和 [Standard] 一起工作,为其他 codes 项目软件包提供报告功能。具体来说,一个提供对应标准定义的类型软件包可以有一个描述该标准的 [Standard] 结构体实例。这反过来又引用了控制该标准的 [Agency]。

以下是一个来自 ISO 4217 软件包的示例。

use codes_agency::{Agency, Standard};

// Taken from codes_iso_4217
pub const ISO_4217: Standard = Standard::new_with_long_ref(
    Agency::ISO,
    "4217",
    "ISO 4217:2015",
    "Currency codes",
    "https://www.iso.org/iso-4217-currency-codes.html",
);

assert_eq!(ISO_4217.agency().to_string(), String::from("ISO"));
assert_eq!(ISO_4217.short_ref(), "4217");
assert_eq!(ISO_4217.long_ref(), Some(&"ISO 4217:2015"));
assert_eq!(ISO_4217.title(), "Currency codes");
assert_eq!(ISO_4217.url(), "https://www.iso.org/iso-4217-currency-codes.html");

有关 API 设计的说明,请参阅仓库中的 README

功能

默认情况下,仅启用 serde 功能。

  • serde - 启用 Agency 类型的序列化。

变更

版本 0.1.9

  • 添加了新的 standardized_type 宏。

版本 0.1.8

  • 添加了新的 Standardized 特性。

版本 0.1.7

  • 添加了新的机构 GS1。

版本 0.1.6

  • 添加了新的机构 UN。

版本 0.1.5

  • 添加了 ALL_CODES 常量。

版本 0.1.4

  • 根据更新的 codes-common 进行清理实现。
  • 使用新的 Code 特性和宏创建的实现。

版本 0.1.3

  • Agency 变体添加了文档。
  • Error 重命名为与其他软件包命名约定一致。

版本 0.1.2

  • 删除了特性 Code
  • 删除了一些特性标志。
  • 添加了文档。
  • 添加了 IANA、IEEE、IETF 作为机构。

版本 0.1.1

  • 初始文档。

版本 0.1.0

  • 初始占位符版本。

待办事项

  1. 从 agencies.xml 创建构建系统
  2. 添加 parent_agency 方法(ITU 是 UN 的一部分)

依赖项

~0.4–1MB
~22K SLoC