/** * @since 2019 * @author Anton Vlasov - whalemare */ class Main { fun main(args: Array) { logger("hello") } } inline fun T.logger(message: String) { createLogger(T::class)(message) } fun createLogger(clazz: T): (message: String) -> Unit { // do something and return logger }