.class public abstract Lkotlin/coroutines/AbstractCoroutineContextKey; .super Ljava/lang/Object; .source "SourceFile" # interfaces .implements Lkotlin/coroutines/CoroutineContext$Key; # instance fields .field public final safeCast:Lkotlin/jvm/functions/Function1; .field public final topmostKey:Lkotlin/coroutines/CoroutineContext$Key; # direct methods .method public constructor (Lkotlin/coroutines/CoroutineContext$Key;Lkotlin/jvm/functions/Function1;)V .locals 1 const-string v0, "baseKey" invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V const-string v0, "safeCast" invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V .line 46 invoke-direct {p0}, Ljava/lang/Object;->()V iput-object p2, p0, Lkotlin/coroutines/AbstractCoroutineContextKey;->safeCast:Lkotlin/jvm/functions/Function1; .line 52 instance-of p2, p1, Lkotlin/coroutines/AbstractCoroutineContextKey; if-eqz p2, :cond_0 check-cast p1, Lkotlin/coroutines/AbstractCoroutineContextKey; iget-object p1, p1, Lkotlin/coroutines/AbstractCoroutineContextKey;->topmostKey:Lkotlin/coroutines/CoroutineContext$Key; :cond_0 iput-object p1, p0, Lkotlin/coroutines/AbstractCoroutineContextKey;->topmostKey:Lkotlin/coroutines/CoroutineContext$Key; return-void .end method # virtual methods .method public final isSubKey$kotlin_stdlib(Lkotlin/coroutines/CoroutineContext$Key;)Z .locals 1 const-string v0, "key" invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V if-eq p1, p0, :cond_1 iget-object v0, p0, Lkotlin/coroutines/AbstractCoroutineContextKey;->topmostKey:Lkotlin/coroutines/CoroutineContext$Key; if-ne v0, p1, :cond_0 goto :goto_0 :cond_0 const/4 p1, 0x0 goto :goto_1 :cond_1 :goto_0 const/4 p1, 0x1 :goto_1 return p1 .end method .method public final tryCast$kotlin_stdlib(Lkotlin/coroutines/CoroutineContext$Element;)Lkotlin/coroutines/CoroutineContext$Element; .locals 1 const-string v0, "element" invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V iget-object v0, p0, Lkotlin/coroutines/AbstractCoroutineContextKey;->safeCast:Lkotlin/jvm/functions/Function1; .line 54 invoke-interface {v0, p1}, Lkotlin/jvm/functions/Function1;->invoke(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 check-cast p1, Lkotlin/coroutines/CoroutineContext$Element; return-object p1 .end method