Combine Printout Logo

一个 Combine 微型调试框架。 它可以帮助您将订阅事件记录到控制台,以便您可以跟踪它们的生命周期。

用法

一个调试打印接收器

内置的 print() 操作符很有用,但您仍然需要为您的订阅添加一个订阅者。 printSink() 是一个订阅者,您可以使用它来调试订阅,而无需像这样添加单独的订阅者

Just(["One", "Two"])
  .printSink()

printSink() 将订阅发布者并记录所有事件,如下所示

Sink: output(["One", "Two"]) 
Sink: finished

一个调试打印可取消对象

如果您正在构建更复杂的内存管理逻辑,或者不确定何时释放您的可取消对象,您可以使用 printCancellable() 来记录给定的 Cancellable 的生命周期,如下所示

Just(["One", "Two"])
  .assign(to: \.model, on: self)
  .printCancellable()
  .store(in: &subscriptions)

printCancellable() 包装从 assign(to:on:) 返回的 AnyCancellable 并记录所有接收到的事件

Cancellable: init 
... 
(self.subscriptions is released from memory)
...
Cancellable: cancel 
Cancellable: deinit 

安装

Swift Package Manager

将以下依赖项添加到您的 Package.swift 文件中

.package(url: "https://github.com/combineopensource/CombinePrintout, from: "0.2")

许可

CombineOpenSource 在 MIT 许可下可用。 有关更多信息,请参见 LICENSE 文件。

鸣谢

版权所有 (c) 2019 Combine Open Source

创建者: Marin Todorov