Learn how to work with the Task object to perform asynchronous operations in a safe way using the new concurrency APIs in Swift. (more…)
Read more »
While working on InterposeKit, I had a rather specific need: Create an implementation that simply calls super, but at runtime instead of at compile time. Doesn’t sound so hard, does it? Well, here we go again. (more…)
Read more »
Learn how to use property wrapper introduced in Swift 5.1 to reduce boilerplate & increase reusability of your UserDefaults wrapper. (more…)
Read more »
When designing APIs, using default arguments can often let us strike a nice balance between flexibility and ease of use — as they let us add solid, intuitive defaults to many of the configuration options that we’ll end up providing. Let’s take a look at a... (more…)
Read more »