jw
09/07/2022, 5:27 PMjw
09/07/2022, 5:30 PMKParameterImplKFunctionImplcallablejw
09/07/2022, 5:31 PMephemient
09/07/2022, 5:32 PM(T) -> RT.() -> Rkotlin.Function1<T, R>kotlin.jvm.internal.Function1jw
09/07/2022, 5:33 PMephemient
09/07/2022, 5:35 PMjw
09/07/2022, 5:36 PMjw
09/07/2022, 5:36 PMephemient
09/07/2022, 5:40 PMkotlin.reflect.typeOf<Unit.() -> Unit>() == kotlin.reflect.typeOf<(Unit) -> Unit>()jw
09/07/2022, 8:16 PMtype.annotations.any { it.annotationClass == ExtensionFunctionType::class }ephemient
09/07/2022, 8:27 PM>>> fun f(block: (Unit) -> Unit) = Unit
>>> fun g(block: Unit.() -> Unit) = Unit
>>> ::f.parameters.single().type.annotations
res0: List<Annotation> = []
>>> ::g.parameters.single().type.annotations
res1: List<Annotation> = [@kotlin.ExtensionFunctionType()]
>>> ::f.parameters.single().type == ::g.parameters.single().type
res2: Boolean = true
>>> typeOf<Unit.() -> Unit>().annotations
res3: List<Annotation> = []jw
09/07/2022, 8:27 PMephemient
09/07/2022, 8:40 PM@kotlin.ContextFunctionTypeParams(count: Int)@kotlin.ParameterName(name: String)FunctionN<>suspendephemient
09/07/2022, 8:40 PM