coupled components, which can be developed, tested and maintained more easily • Swinject is powered by the Swift generic type system and first class functions to define dependencies of your app simply and fluently
language, built on top of Apple's own SourceKit • It extends the language abstractions to allow you to generate boilerplate code automatically • It uses Stencil as template language
_ in A_UseCaseImpl() } container.register(B_UseCase.self) { r in B_UseCaseImpl( repository: r.resolve(B_Repository.self)! ) } … container.register(Z_UseCase.self) { r in Z_UseCaseImpl( repository: r.resolve(Z_Repository.self)! ) } } }