generic Driver
fun <DI : DriverDSL, D : InternalDriverDSL, A> genericDriver(driverDsl: D, coerce: (D) -> DI, dsl: DI.() -> A): A
This is a helper method to allow extending of the DSL, along the lines of interface SomeOtherExposedDSLInterface : DriverDSL interface SomeOtherInternalDSLInterface : InternalDriverDSL, SomeOtherExposedDSLInterface class SomeOtherDSL(val driverDSL : DriverDSLImpl) : InternalDriverDSL by driverDSL, SomeOtherInternalDSLInterface
Parameters
coerce
We need this explicit coercion witness because we can't put an extra DI : D bound in a where
clause.