Very nice article!
Andi Dehelean
11

Good point! I should have explained that. It is really a “lazy” var. If you check the implementation file, you will find this in PluggableApplicationDelegate class:

open var services: [ApplicationService] { return [] }    
private var _services: [ApplicationService]?
public var __services: [ApplicationService] {
if _services == nil {
_services = services
}
return _services!
}

And, inside PluggableApplicationDelegate I use the __services variable. I know, that’s not very elegant, but I thought you can’t override a lazy var…

Of course, if you find a better solution here, please let me know and I will change this 👌