一种便捷的方式,可以将给定的输入通过一系列可调用的类、闭包或函数“管道化”,让每个类有机会检查或修改输入,并调用管道中的下一个可调用对象。
Swift 包管理器允许开发者轻松地将包集成到他们的 Xcode 项目和包中,并且完全集成到 swift 编译器中。
一旦你设置好你的 Swift 包,将 Git 链接添加到你的 Package.swift 文件的 dependencies 值中。
dependencies: [
.package(url: "https://github.com/m1guelpf/swift-pipeline.git", .branch("main"))
]
首先,使用 send
方法创建一个新的管道,传递你想要通过管道传输的输入。然后,使用 through
方法向管道添加一系列管道(可以是实现 Pipe
协议的类,也可以是闭包)。最后,调用 then
方法来转换并获取最终输出。
你也可以使用 pipe
方法将 Pipe
添加到现有的管道中,或者使用 thenReturn
来获取最终输出而不进行转换。
import Pipeline;
try Pipeline.send(project).through(
.pipe(BuildProject(),
.pipe(UploadProject(),
.pipe(DeployProject()),
.fn { project in
// ...
return project
}
))).run()
如果你需要运行异步操作,请使用 AsyncPipeline
代替。
本项目基于 MIT 许可协议 - 详见 LICENSE 文件。