.class public Lkotlin/jvm/internal/FunctionReference; .super Lkotlin/jvm/internal/CallableReference; .source "FunctionReference.java" # interfaces .implements Lkotlin/jvm/internal/b0; .implements Lkotlin/reflect/i; # instance fields .field private final arity:I .field private final flags:I .annotation build Lkotlin/SinceKotlin; version = "1.4" .end annotation .end field # direct methods .method public constructor (I)V .locals 7 .line 1 sget-object v2, Lkotlin/jvm/internal/CallableReference;->NO_RECEIVER:Ljava/lang/Object; const/4 v3, 0x0 const/4 v4, 0x0 const/4 v5, 0x0 const/4 v6, 0x0 move-object v0, p0 move v1, p1 invoke-direct/range {v0 .. v6}, Lkotlin/jvm/internal/FunctionReference;->(ILjava/lang/Object;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;I)V return-void .end method .method public constructor (ILjava/lang/Object;)V .locals 7 .annotation build Lkotlin/SinceKotlin; version = "1.1" .end annotation const/4 v3, 0x0 const/4 v4, 0x0 const/4 v5, 0x0 const/4 v6, 0x0 move-object v0, p0 move v1, p1 move-object v2, p2 .line 2 invoke-direct/range {v0 .. v6}, Lkotlin/jvm/internal/FunctionReference;->(ILjava/lang/Object;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;I)V return-void .end method .method public constructor (ILjava/lang/Object;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;I)V .locals 8 .annotation build Lkotlin/SinceKotlin; version = "1.4" .end annotation and-int/lit8 v0, p6, 0x1 const/4 v1, 0x1 if-ne v0, v1, :cond_0 move v7, v1 goto :goto_0 :cond_0 const/4 v0, 0x0 move v7, v0 :goto_0 move-object v2, p0 move-object v3, p2 move-object v4, p3 move-object v5, p4 move-object v6, p5 .line 3 invoke-direct/range {v2 .. v7}, Lkotlin/jvm/internal/CallableReference;->(Ljava/lang/Object;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Z)V .line 4 iput p1, p0, Lkotlin/jvm/internal/FunctionReference;->arity:I shr-int/lit8 p1, p6, 0x1 .line 5 iput p1, p0, Lkotlin/jvm/internal/FunctionReference;->flags:I return-void .end method # virtual methods .method public computeReflected()Lkotlin/reflect/c; .locals 1 .annotation build Lkotlin/SinceKotlin; version = "1.1" .end annotation .line 1 invoke-static {p0}, Lkotlin/jvm/internal/n0;->c(Lkotlin/jvm/internal/FunctionReference;)Lkotlin/reflect/i; move-result-object v0 return-object v0 .end method .method public equals(Ljava/lang/Object;)Z .locals 4 const/4 v0, 0x1 if-ne p1, p0, :cond_0 return v0 .line 1 :cond_0 instance-of v1, p1, Lkotlin/jvm/internal/FunctionReference; const/4 v2, 0x0 if-eqz v1, :cond_2 .line 2 check-cast p1, Lkotlin/jvm/internal/FunctionReference; .line 3 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->getOwner()Lkotlin/reflect/h; move-result-object v1 invoke-virtual {p1}, Lkotlin/jvm/internal/CallableReference;->getOwner()Lkotlin/reflect/h; move-result-object v3 invoke-static {v1, v3}, Lkotlin/jvm/internal/f0;->g(Ljava/lang/Object;Ljava/lang/Object;)Z move-result v1 if-eqz v1, :cond_1 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->getName()Ljava/lang/String; move-result-object v1 invoke-virtual {p1}, Lkotlin/jvm/internal/CallableReference;->getName()Ljava/lang/String; move-result-object v3 invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v1 if-eqz v1, :cond_1 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->getSignature()Ljava/lang/String; move-result-object v1 invoke-virtual {p1}, Lkotlin/jvm/internal/CallableReference;->getSignature()Ljava/lang/String; move-result-object v3 invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v1 if-eqz v1, :cond_1 iget v1, p0, Lkotlin/jvm/internal/FunctionReference;->flags:I iget v3, p1, Lkotlin/jvm/internal/FunctionReference;->flags:I if-ne v1, v3, :cond_1 iget v1, p0, Lkotlin/jvm/internal/FunctionReference;->arity:I iget v3, p1, Lkotlin/jvm/internal/FunctionReference;->arity:I if-ne v1, v3, :cond_1 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->getBoundReceiver()Ljava/lang/Object; move-result-object v1 invoke-virtual {p1}, Lkotlin/jvm/internal/CallableReference;->getBoundReceiver()Ljava/lang/Object; move-result-object p1 invoke-static {v1, p1}, Lkotlin/jvm/internal/f0;->g(Ljava/lang/Object;Ljava/lang/Object;)Z move-result p1 if-eqz p1, :cond_1 goto :goto_0 :cond_1 move v0, v2 :goto_0 return v0 .line 4 :cond_2 instance-of v0, p1, Lkotlin/reflect/i; if-eqz v0, :cond_3 .line 5 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->compute()Lkotlin/reflect/c; move-result-object v0 invoke-virtual {p1, v0}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result p1 return p1 :cond_3 return v2 .end method .method public getArity()I .locals 1 .line 1 iget v0, p0, Lkotlin/jvm/internal/FunctionReference;->arity:I return v0 .end method .method public bridge synthetic getReflected()Lkotlin/reflect/c; .locals 1 .line 1 invoke-virtual {p0}, Lkotlin/jvm/internal/FunctionReference;->getReflected()Lkotlin/reflect/i; move-result-object v0 return-object v0 .end method .method public getReflected()Lkotlin/reflect/i; .locals 1 .annotation build Lkotlin/SinceKotlin; version = "1.1" .end annotation .line 2 invoke-super {p0}, Lkotlin/jvm/internal/CallableReference;->getReflected()Lkotlin/reflect/c; move-result-object v0 check-cast v0, Lkotlin/reflect/i; return-object v0 .end method .method public hashCode()I .locals 2 .line 1 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->getOwner()Lkotlin/reflect/h; move-result-object v0 if-nez v0, :cond_0 const/4 v0, 0x0 goto :goto_0 :cond_0 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->getOwner()Lkotlin/reflect/h; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I move-result v0 mul-int/lit8 v0, v0, 0x1f :goto_0 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->getName()Ljava/lang/String; move-result-object v1 invoke-virtual {v1}, Ljava/lang/String;->hashCode()I move-result v1 add-int/2addr v1, v0 mul-int/lit8 v1, v1, 0x1f invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->getSignature()Ljava/lang/String; move-result-object v0 invoke-virtual {v0}, Ljava/lang/String;->hashCode()I move-result v0 add-int/2addr v0, v1 return v0 .end method .method public isExternal()Z .locals 1 .annotation build Lkotlin/SinceKotlin; version = "1.1" .end annotation .line 1 invoke-virtual {p0}, Lkotlin/jvm/internal/FunctionReference;->getReflected()Lkotlin/reflect/i; move-result-object v0 invoke-interface {v0}, Lkotlin/reflect/i;->isExternal()Z move-result v0 return v0 .end method .method public isInfix()Z .locals 1 .annotation build Lkotlin/SinceKotlin; version = "1.1" .end annotation .line 1 invoke-virtual {p0}, Lkotlin/jvm/internal/FunctionReference;->getReflected()Lkotlin/reflect/i; move-result-object v0 invoke-interface {v0}, Lkotlin/reflect/i;->isInfix()Z move-result v0 return v0 .end method .method public isInline()Z .locals 1 .annotation build Lkotlin/SinceKotlin; version = "1.1" .end annotation .line 1 invoke-virtual {p0}, Lkotlin/jvm/internal/FunctionReference;->getReflected()Lkotlin/reflect/i; move-result-object v0 invoke-interface {v0}, Lkotlin/reflect/i;->isInline()Z move-result v0 return v0 .end method .method public isOperator()Z .locals 1 .annotation build Lkotlin/SinceKotlin; version = "1.1" .end annotation .line 1 invoke-virtual {p0}, Lkotlin/jvm/internal/FunctionReference;->getReflected()Lkotlin/reflect/i; move-result-object v0 invoke-interface {v0}, Lkotlin/reflect/i;->isOperator()Z move-result v0 return v0 .end method .method public isSuspend()Z .locals 1 .annotation build Lkotlin/SinceKotlin; version = "1.1" .end annotation .line 1 invoke-virtual {p0}, Lkotlin/jvm/internal/FunctionReference;->getReflected()Lkotlin/reflect/i; move-result-object v0 invoke-interface {v0}, Lkotlin/reflect/i;->isSuspend()Z move-result v0 return v0 .end method .method public toString()Ljava/lang/String; .locals 2 .line 1 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->compute()Lkotlin/reflect/c; move-result-object v0 if-eq v0, p0, :cond_0 .line 2 invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .line 3 :cond_0 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->getName()Ljava/lang/String; move-result-object v0 const-string v1, "" invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v0 if-eqz v0, :cond_1 const-string v0, "constructor (Kotlin reflection is not available)" goto :goto_0 :cond_1 const-string v0, "function " invoke-static {v0}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {p0}, Lkotlin/jvm/internal/CallableReference;->getName()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v1, " (Kotlin reflection is not available)" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 :goto_0 return-object v0 .end method