appsquickly / Typhoon-Swift-Example

Swift example application for Typhoon
Apache License 2.0
352 stars 73 forks source link

Is it possible to inject using "useInitializer" when method includes swift pure protocols? #11

Closed claudioredi closed 9 years ago

claudioredi commented 9 years ago

I have the following initializer

 init(database: DatabaseProtocol, deserializerFactory: DeserializerFactory ) {
        self.database = database
        self.deserializerFactory = deserializerFactory
}

and I try to inject parameters using

definition.useInitializer("initWithDatabase:deserializerFactory:") {
         (initializer) in

         initializer.injectParameterWith(self.dataStoreAssembly.database())
         initializer.injectParameterWith(self.dataStoreAssembly.deserializerFactory())
}

So far I understand, I should add @objc to DatabaseProtocol. Problem is that I can't do this since it has members that can't be represented in objective c

claudioredi commented 9 years ago

Moved this to Typhoon repo since created it here by mistake