perfectlysoft/perfect-repeater
The Perfect "Repeater" is a simple library that takes a closure and executes it at the specified interval until the closure returns false or the application is terminated.
Compatibility with Swift
The master branch of this project currently compiles with Xcode 9 or the Swift 4 toolchain on Ubuntu, and is compatible with both Perfect 2.x and 3.x
Building
Add this project as a dependency in your Package.swift file.
.Package(url:"https://github.com/PerfectlySoft/Perfect-Repeater.git", majorVersion: 1)Usage
Include in your file the import statement:
import PerfectRepeaterThe base form of executing this is:
Repeater.exec(timer: <Double>, callback: <Closure>)To demonstrate the process of repeating a closure containing your code and optionally re-queuing:
var opt = 1
let c = {
() -> Bool in
print("XXXXXX")
return true
}
let cc = {
() -> Bool in
print("Hello, world! (\(opt))")
if opt < 10 {
opt += 1
return true
} else {
print("cc exiting.")
return false
}
}
Repeater.exec(timer: 3.0, callback: c)
Repeater.exec(timer: 2.0, callback: cc)Further Information
For more information on the Perfect project, please visit perfect.org.
Package Metadata
Repository: perfectlysoft/perfect-repeater
Default branch: master
README: README.md