.class public final Lkotlinx/coroutines/android/HandlerContext; .super Lkotlinx/coroutines/android/a; .source "HandlerDispatcher.kt" # interfaces .implements Lkotlinx/coroutines/v0; # annotations .annotation system Ldalvik/annotation/SourceDebugExtension; value = "SMAP\nHandlerDispatcher.kt\nKotlin\n*S Kotlin\n*F\n+ 1 HandlerDispatcher.kt\nkotlinx/coroutines/android/HandlerContext\n+ 2 Runnable.kt\nkotlinx/coroutines/RunnableKt\n+ 3 fake.kt\nkotlin/jvm/internal/FakeKt\n*L\n1#1,194:1\n17#2:195\n1#3:196\n*E\n*S KotlinDebug\n*F\n+ 1 HandlerDispatcher.kt\nkotlinx/coroutines/android/HandlerContext\n*L\n136#1:195\n*E\n" .end annotation .annotation runtime Lkotlin/Metadata; bv = {} d1 = { "\u0000Z\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000b\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\t\n\u0000\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\u0000\n\u0002\u0008\u0002\n\u0002\u0010\u0008\n\u0002\u0008\u0007\n\u0002\u0018\u0002\n\u0002\u0008\u000c\u0008\u0000\u0018\u00002\u00020\u00012\u00020\u0002B#\u0008\u0002\u0012\u0006\u0010#\u001a\u00020 \u0012\u0008\u0010%\u001a\u0004\u0018\u00010\u0013\u0012\u0006\u0010(\u001a\u00020\u0005\u00a2\u0006\u0004\u0008)\u0010*B\u001d\u0008\u0016\u0012\u0006\u0010#\u001a\u00020 \u0012\n\u0008\u0002\u0010%\u001a\u0004\u0018\u00010\u0013\u00a2\u0006\u0004\u0008)\u0010+J\u0010\u0010\u0006\u001a\u00020\u00052\u0006\u0010\u0004\u001a\u00020\u0003H\u0016J\u001c\u0010\u000b\u001a\u00020\n2\u0006\u0010\u0004\u001a\u00020\u00032\n\u0010\t\u001a\u00060\u0007j\u0002`\u0008H\u0016J\u001e\u0010\u0010\u001a\u00020\n2\u0006\u0010\r\u001a\u00020\u000c2\u000c\u0010\u000f\u001a\u0008\u0012\u0004\u0012\u00020\n0\u000eH\u0016J$\u0010\u0012\u001a\u00020\u00112\u0006\u0010\r\u001a\u00020\u000c2\n\u0010\t\u001a\u00060\u0007j\u0002`\u00082\u0006\u0010\u0004\u001a\u00020\u0003H\u0016J\u0008\u0010\u0014\u001a\u00020\u0013H\u0016J\u0013\u0010\u0017\u001a\u00020\u00052\u0008\u0010\u0016\u001a\u0004\u0018\u00010\u0015H\u0096\u0002J\u0008\u0010\u0019\u001a\u00020\u0018H\u0016R\u0018\u0010\u001a\u001a\u0004\u0018\u00010\u00008\u0002@\u0002X\u0082\u000e\u00a2\u0006\u0006\n\u0004\u0008\u001a\u0010\u001bR\u001a\u0010\u001f\u001a\u00020\u00008\u0016X\u0096\u0004\u00a2\u0006\u000c\n\u0004\u0008\u001c\u0010\u001b\u001a\u0004\u0008\u001d\u0010\u001eR\u0014\u0010#\u001a\u00020 8\u0002X\u0082\u0004\u00a2\u0006\u0006\n\u0004\u0008!\u0010\"R\u0016\u0010%\u001a\u0004\u0018\u00010\u00138\u0002X\u0082\u0004\u00a2\u0006\u0006\n\u0004\u0008\u0010\u0010$R\u0014\u0010(\u001a\u00020\u00058\u0002X\u0082\u0004\u00a2\u0006\u0006\n\u0004\u0008&\u0010\'\u00a8\u0006," } d2 = { "Lkotlinx/coroutines/android/HandlerContext;", "Lkotlinx/coroutines/android/a;", "Lkotlinx/coroutines/v0;", "Lkotlin/coroutines/CoroutineContext;", "context", "", "isDispatchNeeded", "Ljava/lang/Runnable;", "Lkotlinx/coroutines/Runnable;", "block", "Lkotlin/d1;", "dispatch", "", "timeMillis", "Lkotlinx/coroutines/n;", "continuation", "c", "Lkotlinx/coroutines/e1;", "Y", "", "toString", "", "other", "equals", "", "hashCode", "_immediate", "Lkotlinx/coroutines/android/HandlerContext;", "a", "L1", "()Lkotlinx/coroutines/android/HandlerContext;", "immediate", "Landroid/os/Handler;", "b", "Landroid/os/Handler;", "handler", "Ljava/lang/String;", "name", "d", "Z", "invokeImmediately", "", "(Landroid/os/Handler;Ljava/lang/String;Z)V", "(Landroid/os/Handler;Ljava/lang/String;)V", "kotlinx-coroutines-android" } k = 0x1 mv = { 0x1, 0x4, 0x0 } .end annotation # instance fields .field private volatile _immediate:Lkotlinx/coroutines/android/HandlerContext; .field public final a:Lkotlinx/coroutines/android/HandlerContext; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end field .field public final b:Landroid/os/Handler; .field public final c:Ljava/lang/String; .field public final d:Z # direct methods .method public constructor (Landroid/os/Handler;Ljava/lang/String;)V .locals 1 .param p1 # Landroid/os/Handler; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .param p2 # Ljava/lang/String; .annotation build Lorg/jetbrains/annotations/Nullable; .end annotation .end param const/4 v0, 0x0 .line 6 invoke-direct {p0, p1, p2, v0}, Lkotlinx/coroutines/android/HandlerContext;->(Landroid/os/Handler;Ljava/lang/String;Z)V return-void .end method .method public synthetic constructor (Landroid/os/Handler;Ljava/lang/String;ILkotlin/jvm/internal/u;)V .locals 0 and-int/lit8 p3, p3, 0x2 if-eqz p3, :cond_0 const/4 p2, 0x0 .line 5 :cond_0 invoke-direct {p0, p1, p2}, Lkotlinx/coroutines/android/HandlerContext;->(Landroid/os/Handler;Ljava/lang/String;)V return-void .end method .method public constructor (Landroid/os/Handler;Ljava/lang/String;Z)V .locals 1 const/4 v0, 0x0 .line 1 invoke-direct {p0, v0}, Lkotlinx/coroutines/android/a;->(Lkotlin/jvm/internal/u;)V iput-object p1, p0, Lkotlinx/coroutines/android/HandlerContext;->b:Landroid/os/Handler; iput-object p2, p0, Lkotlinx/coroutines/android/HandlerContext;->c:Ljava/lang/String; iput-boolean p3, p0, Lkotlinx/coroutines/android/HandlerContext;->d:Z if-eqz p3, :cond_0 move-object v0, p0 .line 2 :cond_0 iput-object v0, p0, Lkotlinx/coroutines/android/HandlerContext;->_immediate:Lkotlinx/coroutines/android/HandlerContext; .line 3 iget-object p3, p0, Lkotlinx/coroutines/android/HandlerContext;->_immediate:Lkotlinx/coroutines/android/HandlerContext; if-eqz p3, :cond_1 goto :goto_0 .line 4 :cond_1 new-instance p3, Lkotlinx/coroutines/android/HandlerContext; const/4 v0, 0x1 invoke-direct {p3, p1, p2, v0}, Lkotlinx/coroutines/android/HandlerContext;->(Landroid/os/Handler;Ljava/lang/String;Z)V iput-object p3, p0, Lkotlinx/coroutines/android/HandlerContext;->_immediate:Lkotlinx/coroutines/android/HandlerContext; sget-object p1, Lkotlin/d1;->a:Lkotlin/d1; :goto_0 iput-object p3, p0, Lkotlinx/coroutines/android/HandlerContext;->a:Lkotlinx/coroutines/android/HandlerContext; return-void .end method .method public static final synthetic K1(Lkotlinx/coroutines/android/HandlerContext;)Landroid/os/Handler; .locals 0 .line 1 iget-object p0, p0, Lkotlinx/coroutines/android/HandlerContext;->b:Landroid/os/Handler; return-object p0 .end method # virtual methods .method public bridge synthetic H1()Lkotlinx/coroutines/i2; .locals 1 .line 1 invoke-virtual {p0}, Lkotlinx/coroutines/android/HandlerContext;->L1()Lkotlinx/coroutines/android/HandlerContext; move-result-object v0 return-object v0 .end method .method public bridge synthetic J1()Lkotlinx/coroutines/android/a; .locals 1 .line 1 invoke-virtual {p0}, Lkotlinx/coroutines/android/HandlerContext;->L1()Lkotlinx/coroutines/android/HandlerContext; move-result-object v0 return-object v0 .end method .method public L1()Lkotlinx/coroutines/android/HandlerContext; .locals 1 .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .line 1 iget-object v0, p0, Lkotlinx/coroutines/android/HandlerContext;->a:Lkotlinx/coroutines/android/HandlerContext; return-object v0 .end method .method public Y(JLjava/lang/Runnable;Lkotlin/coroutines/CoroutineContext;)Lkotlinx/coroutines/e1; .locals 2 .param p3 # Ljava/lang/Runnable; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .param p4 # Lkotlin/coroutines/CoroutineContext; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .line 1 iget-object p4, p0, Lkotlinx/coroutines/android/HandlerContext;->b:Landroid/os/Handler; const-wide v0, 0x3fffffffffffffffL # 1.9999999999999998 invoke-static {p1, p2, v0, v1}, Lkj/q;->v(JJ)J move-result-wide p1 invoke-virtual {p4, p3, p1, p2}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z .line 2 new-instance p1, Lkotlinx/coroutines/android/HandlerContext$a; invoke-direct {p1, p0, p3}, Lkotlinx/coroutines/android/HandlerContext$a;->(Lkotlinx/coroutines/android/HandlerContext;Ljava/lang/Runnable;)V return-object p1 .end method .method public c(JLkotlinx/coroutines/n;)V .locals 4 .param p3 # Lkotlinx/coroutines/n; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .annotation system Ldalvik/annotation/Signature; value = { "(J", "Lkotlinx/coroutines/n<", "-", "Lkotlin/d1;", ">;)V" } .end annotation .line 1 new-instance v0, Lkotlinx/coroutines/android/HandlerContext$b; invoke-direct {v0, p0, p3}, Lkotlinx/coroutines/android/HandlerContext$b;->(Lkotlinx/coroutines/android/HandlerContext;Lkotlinx/coroutines/n;)V .line 2 iget-object v1, p0, Lkotlinx/coroutines/android/HandlerContext;->b:Landroid/os/Handler; const-wide v2, 0x3fffffffffffffffL # 1.9999999999999998 invoke-static {p1, p2, v2, v3}, Lkj/q;->v(JJ)J move-result-wide p1 invoke-virtual {v1, v0, p1, p2}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z .line 3 new-instance p1, Lkotlinx/coroutines/android/HandlerContext$scheduleResumeAfterDelay$1; invoke-direct {p1, p0, v0}, Lkotlinx/coroutines/android/HandlerContext$scheduleResumeAfterDelay$1;->(Lkotlinx/coroutines/android/HandlerContext;Ljava/lang/Runnable;)V invoke-interface {p3, p1}, Lkotlinx/coroutines/n;->h(Lej/l;)V return-void .end method .method public dispatch(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Runnable;)V .locals 0 .param p1 # Lkotlin/coroutines/CoroutineContext; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .param p2 # Ljava/lang/Runnable; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .line 1 iget-object p1, p0, Lkotlinx/coroutines/android/HandlerContext;->b:Landroid/os/Handler; invoke-virtual {p1, p2}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z return-void .end method .method public equals(Ljava/lang/Object;)Z .locals 1 .param p1 # Ljava/lang/Object; .annotation build Lorg/jetbrains/annotations/Nullable; .end annotation .end param .line 1 instance-of v0, p1, Lkotlinx/coroutines/android/HandlerContext; if-eqz v0, :cond_0 check-cast p1, Lkotlinx/coroutines/android/HandlerContext; iget-object p1, p1, Lkotlinx/coroutines/android/HandlerContext;->b:Landroid/os/Handler; iget-object v0, p0, Lkotlinx/coroutines/android/HandlerContext;->b:Landroid/os/Handler; if-ne p1, v0, :cond_0 const/4 p1, 0x1 goto :goto_0 :cond_0 const/4 p1, 0x0 :goto_0 return p1 .end method .method public hashCode()I .locals 1 .line 1 iget-object v0, p0, Lkotlinx/coroutines/android/HandlerContext;->b:Landroid/os/Handler; invoke-static {v0}, Ljava/lang/System;->identityHashCode(Ljava/lang/Object;)I move-result v0 return v0 .end method .method public isDispatchNeeded(Lkotlin/coroutines/CoroutineContext;)Z .locals 2 .param p1 # Lkotlin/coroutines/CoroutineContext; .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .end param .line 1 iget-boolean p1, p0, Lkotlinx/coroutines/android/HandlerContext;->d:Z const/4 v0, 0x1 if-eqz p1, :cond_1 invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper; move-result-object p1 iget-object v1, p0, Lkotlinx/coroutines/android/HandlerContext;->b:Landroid/os/Handler; invoke-virtual {v1}, Landroid/os/Handler;->getLooper()Landroid/os/Looper; move-result-object v1 invoke-static {p1, v1}, Lkotlin/jvm/internal/f0;->g(Ljava/lang/Object;Ljava/lang/Object;)Z move-result p1 xor-int/2addr p1, v0 if-eqz p1, :cond_0 goto :goto_0 :cond_0 const/4 v0, 0x0 :cond_1 :goto_0 return v0 .end method .method public toString()Ljava/lang/String; .locals 2 .annotation build Lorg/jetbrains/annotations/NotNull; .end annotation .line 1 invoke-virtual {p0}, Lkotlinx/coroutines/i2;->I1()Ljava/lang/String; move-result-object v0 if-eqz v0, :cond_0 goto :goto_1 .line 2 :cond_0 iget-object v0, p0, Lkotlinx/coroutines/android/HandlerContext;->c:Ljava/lang/String; if-eqz v0, :cond_1 goto :goto_0 :cond_1 iget-object v0, p0, Lkotlinx/coroutines/android/HandlerContext;->b:Landroid/os/Handler; invoke-virtual {v0}, Landroid/os/Handler;->toString()Ljava/lang/String; move-result-object v0 .line 3 :goto_0 iget-boolean v1, p0, Lkotlinx/coroutines/android/HandlerContext;->d:Z if-eqz v1, :cond_2 const-string v1, ".immediate" invoke-static {v0, v1}, Lc/g;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object v0 :cond_2 :goto_1 return-object v0 .end method