一个使用 Swift 4 编写的 UInt256 库,其灵感来源于 CryptoCoinSwift/UInt256
该库提供了一个 UInt256 结构体,它完美地符合 Swift 的 FixedWidthInteger 和 UnsignedInteger 协议。根据 Apple 的说法,这两个是 UInt 成员必需的顶级协议:这里
它支持完整的算术运算集合,以及 UInt 族的其他成员(如 UInt64
、UInt32
、UInt8
等)常用的属性和函数。 该库利用 Karatsuba 快速乘法算法、分治法除法算法、Barrett 算法进行除法以及其他高效算法用于其他运算符。其他功能包括整数文字表示(ExpressibleByIntegerLiteral
)、默认描述(CustomStringConvertible
)和 Hashable
。
该库完全用 Swift 4 编写。 它可以作为 Swift Package、Carthage package 或 CocoaPod 安装。 并且还包含一个 playground 作为测试平台。
请随时在此处 GitHub 上提交新的功能请求并报告问题。 😃
主结构体 UInt256 严格符合以下协议
如果您需要任何帮助或有功能请求,请在此处 GitHub 上打开一个 issue;如果您发现错误或想帮助开发,请提交一个 pull request。 欢迎所有贡献! 😃
首先,请确保已安装 Carthage
brew update
brew install carthage
要将此库集成到您的 Xcode 项目中,只需将以下行放入您的 carfile
中
github "hyugit/UInt256"
最后,运行 carthage update
来构建框架,并将构建的框架(UInt256_iOS.framework
或 UInt256_macOS.framework
)拖到您的 Xcode 项目中
该库也支持 Swift Package Manager。 如果您已经设置了 swift package 配置,请将以下行添加到您的 Package.swift
dependencies: [
.package(url: "https://github.com/hyugit/UInt256.git", from: "4.0.0")
]
按照其 官方指南 安装 CocoaPods
要使用 CocoaPods 将 UInt256 集成到您的 Xcode 项目中,请在您的 Podfile
中指定它
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!
target '<Your Target Name>' do
pod 'UInt256', :git => 'https://github.com/hyugit/UInt256.git'
end
然后运行 pod install
。
您也可以手动将此库添加到您的项目中。
在终端中,在您的顶层项目目录下,通过运行以下命令将此库添加为 git submodule
git submodule add https://github.com/hyugit/UInt256.git
打开 Xcode,转到 Finder 中新的 UInt256
子目录,将 UInt256.xcodeproj
拖到您的项目的项目导航器中。 请记住将框架嵌入到您的构建目标中。
该库在 MIT 许可证下发布。 请参阅 LICENSE