.class public final Lkotlin/reflect/jvm/ReflectLambdaKt; .super Ljava/lang/Object; .source "reflectLambda.kt" # annotations .annotation system Ldalvik/annotation/SourceDebugExtension; value = "SMAP\nreflectLambda.kt\nKotlin\n*S Kotlin\n*F\n+ 1 reflectLambda.kt\nkotlin/reflect/jvm/ReflectLambdaKt\n+ 2 fake.kt\nkotlin/jvm/internal/FakeKt\n*L\n1#1,79:1\n1#2:80\n*E\n" .end annotation .annotation runtime Lkotlin/Metadata; d1 = { "\u0000\u000e\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\u001a \u0010\u0000\u001a\n\u0012\u0004\u0012\u0002H\u0002\u0018\u00010\u0001\"\u0004\u0008\u0000\u0010\u0002*\u0008\u0012\u0004\u0012\u0002H\u00020\u0003H\u0007\u00a8\u0006\u0004" } d2 = { "reflect", "Lkotlin/reflect/KFunction;", "R", "Lkotlin/Function;", "kotlin-reflection" } k = 0x2 mv = { 0x1, 0x5, 0x1 } .end annotation # direct methods .method public static final reflect(Lkotlin/Function;)Lkotlin/reflect/KFunction; .registers 13 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lkotlin/Function<", "+TR;>;)", "Lkotlin/reflect/KFunction<", "TR;>;" } .end annotation const-string v0, "$this$reflect" invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V .line 37 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v0 const-class v1, Lkotlin/Metadata; invoke-virtual {v0, v1}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation; move-result-object v0 check-cast v0, Lkotlin/Metadata; const/4 v1, 0x0 if-eqz v0, :cond_7c .line 38 invoke-interface {v0}, Lkotlin/Metadata;->d1()[Ljava/lang/String; move-result-object v2 array-length v3, v2 if-nez v3, :cond_1c move-object v2, v1 :cond_1c if-eqz v2, :cond_7c .line 39 invoke-interface {v0}, Lkotlin/Metadata;->d2()[Ljava/lang/String; move-result-object v3 invoke-static {v2, v3}, Lkotlin/reflect/jvm/internal/impl/metadata/jvm/deserialization/JvmProtoBufUtil;->readFunctionDataFrom([Ljava/lang/String;[Ljava/lang/String;)Lkotlin/Pair; move-result-object v2 invoke-virtual {v2}, Lkotlin/Pair;->component1()Ljava/lang/Object; move-result-object v3 check-cast v3, Lkotlin/reflect/jvm/internal/impl/metadata/jvm/deserialization/JvmNameResolver; invoke-virtual {v2}, Lkotlin/Pair;->component2()Ljava/lang/Object; move-result-object v2 check-cast v2, Lkotlin/reflect/jvm/internal/impl/metadata/ProtoBuf$Function; .line 40 new-instance v4, Lkotlin/reflect/jvm/internal/impl/metadata/jvm/deserialization/JvmMetadataVersion; .line 41 invoke-interface {v0}, Lkotlin/Metadata;->mv()[I move-result-object v5 .line 42 invoke-interface {v0}, Lkotlin/Metadata;->xi()I move-result v0 and-int/lit8 v0, v0, 0x8 if-eqz v0, :cond_42 const/4 v0, 0x1 goto :goto_43 :cond_42 const/4 v0, 0x0 .line 40 :goto_43 invoke-direct {v4, v5, v0}, Lkotlin/reflect/jvm/internal/impl/metadata/jvm/deserialization/JvmMetadataVersion;->([IZ)V .line 46 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v6 move-object v7, v2 check-cast v7, Lkotlin/reflect/jvm/internal/impl/protobuf/MessageLite; move-object v8, v3 check-cast v8, Lkotlin/reflect/jvm/internal/impl/metadata/deserialization/NameResolver; new-instance v9, Lkotlin/reflect/jvm/internal/impl/metadata/deserialization/TypeTable; invoke-virtual {v2}, Lkotlin/reflect/jvm/internal/impl/metadata/ProtoBuf$Function;->getTypeTable()Lkotlin/reflect/jvm/internal/impl/metadata/ProtoBuf$TypeTable; move-result-object p0 const-string v0, "proto.typeTable" invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V invoke-direct {v9, p0}, Lkotlin/reflect/jvm/internal/impl/metadata/deserialization/TypeTable;->(Lkotlin/reflect/jvm/internal/impl/metadata/ProtoBuf$TypeTable;)V move-object v10, v4 check-cast v10, Lkotlin/reflect/jvm/internal/impl/metadata/deserialization/BinaryVersion; sget-object p0, Lkotlin/reflect/jvm/ReflectLambdaKt$reflect$descriptor$1;->INSTANCE:Lkotlin/reflect/jvm/ReflectLambdaKt$reflect$descriptor$1; move-object v11, p0 check-cast v11, Lkotlin/jvm/functions/Function2; .line 45 invoke-static/range {v6 .. v11}, Lkotlin/reflect/jvm/internal/UtilKt;->deserializeToDescriptor(Ljava/lang/Class;Lkotlin/reflect/jvm/internal/impl/protobuf/MessageLite;Lkotlin/reflect/jvm/internal/impl/metadata/deserialization/NameResolver;Lkotlin/reflect/jvm/internal/impl/metadata/deserialization/TypeTable;Lkotlin/reflect/jvm/internal/impl/metadata/deserialization/BinaryVersion;Lkotlin/jvm/functions/Function2;)Lkotlin/reflect/jvm/internal/impl/descriptors/CallableDescriptor; move-result-object p0 check-cast p0, Lkotlin/reflect/jvm/internal/impl/descriptors/SimpleFunctionDescriptor; if-eqz p0, :cond_7c .line 50 new-instance v0, Lkotlin/reflect/jvm/internal/KFunctionImpl; sget-object v1, Lkotlin/reflect/jvm/internal/EmptyContainerForLocal;->INSTANCE:Lkotlin/reflect/jvm/internal/EmptyContainerForLocal; check-cast v1, Lkotlin/reflect/jvm/internal/KDeclarationContainerImpl; check-cast p0, Lkotlin/reflect/jvm/internal/impl/descriptors/FunctionDescriptor; invoke-direct {v0, v1, p0}, Lkotlin/reflect/jvm/internal/KFunctionImpl;->(Lkotlin/reflect/jvm/internal/KDeclarationContainerImpl;Lkotlin/reflect/jvm/internal/impl/descriptors/FunctionDescriptor;)V check-cast v0, Lkotlin/reflect/KFunction; return-object v0 :cond_7c return-object v1 .end method