Swift 货币

MIT License Documentation Badge

Swift Compatability Platform Compatability

Package Tests codecov

Maintainability

简介

Swift 货币提供了一个 ISO 4217 框架,用于在 Swift 中以类型安全的方式表示货币。

它为处理货币提供了许多便利,例如字面量表示、价值格式化和数学运算。

import Currency
import Foundation

let dollars = USD(30.01)
print(dollars)
// 30.01 USD
print(dollars * 2)
// 60.02 USD
print(dollars.distributedEvenly(intoParts: 6))
// [USD(1.68), USD(1.68), USD(1.68), USD(1.67), USD(1.67), USD(1.67)]

let pounds = GBP(109.23)
print(dollars + pounds)
// compile error

let jpy: JPY = 399
print("The total price is \(jpy.localizedString()).")
// "The total price is ¥399.", assuming `Foundation.Locale.current` is "en_US"

let euro = EUR(29.09)
print("Der Gesamtpreis beträgt \(localize: euro, for: .init(identifier: "de_DE")).")
// "Der Gesamtpreis beträgt 29,09 €."

有关更详细的示例,请参阅文档

语言和平台支持

该库尽最大努力在官方支持该库的任何地方运行测试,即官方语言支持的范围。

然而,GitHub Actions 的 macOS 云 runners 使测试所有可能性变得有些困难,因为它们会弃用 macOS 版本或不提供安装较新 Xcode 版本。

要验证该软件包是否在您期望的平台上正常工作,请查看最新的测试结果

安装

将软件包引用添加到您的 Package.swift 以通过 SwiftPM 安装。

dependencies: [
    .package(url: "https://github.com/peek-travel/swift-currency", .upToNextMajor(from: "1.0.0"))
]

文档

文档可从 Swift Package Index 获取。

问题

对于错误或功能请求,请提交新的 issue

更新日志

SemVer 更改记录在发布页面的每个版本中。

贡献

查看 CONTRIBUTING.md 以获取有关如何帮助 SwiftCurrency 的更多信息。

贡献者

查看 CONTRIBUTORS.txt 查看完整列表。此列表在每个版本中更新。

许可证

MIT

版权所有 (c) 2020-至今, Peek Travel Inc.

本项目包含由其他与本项目无关的人员编写的代码。所有版权声明均由他们保留。 有关包含其声明权利的完整列表,请参阅 NOTICE.txt

SwiftApple, Inc 的注册商标。 对其商标的任何使用并不意味着与他们的任何关联或由他们认可,所有权利均由他们保留。