icanzilb/rxtimelane
**RxTimelane** provides RxSwift bindings for profiling RxSwift code with the Timelane Instrument.
`lane(_:filter:)`
Use lane("Lane name") to send data to both the subscriptions and events lanes in the Timelane Instrument.
lane("Lane name", filter: [.subscriptions]) sends begin/completion events to the Subscriptions lane. Use this syntax if you only want to observe concurrent subscriptions.
lane("Lane name", filter: [.events]) sends events and values to the Events lane. Use this filter if you are only interested in values a subscription would emit (e.g. for example subjects).
Additionally you can transform the values logged in Timelane by using the optional transformValue trailing closure:
lane("Lane name", transformValue: { value in
return "Value: \(value)"
})Installation
Swift Package Manager
I . Automatically in Xcode:
- Click File > Swift Packages > Add Package Dependency... - Use the package URL https://github.com/icanzilb/RxTimelane to add TimelaneCombine to your project.
II . Manually in your Package.swift file add:
.package(url: "https://github.com/icanzilb/RxTimelane", from: "2.0.0")CocoaPods
CocoaPods is a dependency manager for Cocoa projects. For usage and installation instructions, visit their website. To integrate RxTimelane into your Xcode project using CocoaPods, add it to your Podfile:
pod 'RxTimelane', '~> 2.0'Carthage
Not supported. More info
Demo
This repo contains a simple demo app. To give it a try open RxTimelaneExample/RxTimelane.xcodeproj and run the "RxTimelaneExample" scheme.
[Timelane demo app]
License
Copyright (c) Marin Todorov 2020 This package is provided under the MIT License.
Package Metadata
Repository: icanzilb/rxtimelane
Default branch: main
README: README.md