SE0288_IsPower

SE0288_IsPower 是一个独立的库,它实现了 Swift 演化提案 SE-0288:向 BinaryInteger 添加 isPower(of:)。你可以独立使用这个包,或者作为 标准库预览包 的一部分使用。

简介

这个包为 BinaryInteger 协议添加了一个公共 API isPower(of:),作为一个扩展方法。它检查一个整数是否为另一个整数的幂。也就是说,a.isPower(of: b) 检查是否存在任何整数 n 使得 a == pow(b, n) 为真。

import SE0288_IsPower

let x: Int = Int.random(in: 0000..<0288)
1.isPower(of: x)      // 'true' since x^0 == 1

let y: UInt = 1000
y.isPower(of: 10)     // 'true' since 10^3 == 1000

(-1).isPower(of: 1)   // 'false'

(-32).isPower(of: -2) // 'true' since (-2)^5 == -32

用法

你可以将此库作为依赖项添加到任何 Swift 包中。将这行代码添加到你的 Package.swift 文件中的 dependencies 参数中

.package(url: "https://github.com/apple/swift-se0288-is-power", from: "2.0.0"),

接下来,将此模块添加为你将要使用此库的目标的依赖项

.product(name: "SE0288_IsPower", package: "swift-se0288-is-power"),

现在你可以使用 import SE0288_IsPower 以在任何 Swift 文件中使该库可用。

贡献

我们不再接受对此仓库的贡献。请参阅 Swift 贡献指南,以了解 Swift 项目中的其他机会。感谢所有过去的贡献者!