You can install this framework with Swift Package Manager in Xcode 11.
Feature
Inject protocol values
final class ViewController: UIViewController {
@Inject(Self.self) var apiClient: APIClientProtocol
...
}
// Production
DIResolver.register(ViewController.self, keyPath: \.apiClient, value: ProductionAPIClient())
// Test
DIResolver.register(ViewController.self, keyPath: \.apiClient, value: MockAPIClient())
DIAttribute
[WIP] DIAttribute introduces dependency injection attribute.
Installation
You can install this framework with Swift Package Manager in Xcode 11.
Feature
Inject protocol values
Inject multiple values
License
DIAttribute is released under the MIT license. See LICENSE for details.