Question about generics, I've function like this:
expect fun <T : HttpClientEngineConfig> getEngineFactory(): HttpClientEngineFactory<T>
where
HttpClientEngineFactory
is defined as:
public interface HttpClientEngineFactory<out T : HttpClientEngineConfig>
and on Jvm actual implementation is:
actual fun <T : HttpClientEngineConfig> getEngineFactory(): HttpClientEngineFactory<T> {
return OkHttp
}
where
OkHttp
is defined as:
public object OkHttp : HttpClientEngineFactory<OkHttpConfig>
and for
OkHttpConfig
:
public class OkHttpConfig : HttpClientEngineConfig
the problem is that the actual implementation doesn't compile because of type mismatch, required:
HttpClientEngineFactory<T>
found:
OkHttp