.class public abstract Lkotlinx/coroutines/internal/ConcurrentKt; .super Ljava/lang/Object; .source "SourceFile" # static fields .field public static final REMOVE_FUTURE_ON_CANCEL:Ljava/lang/reflect/Method; # direct methods .method static constructor ()V .locals 5 :try_start_0 const-class v0, Ljava/util/concurrent/ScheduledThreadPoolExecutor; const-string v1, "setRemoveOnCancelPolicy" const/4 v2, 0x1 new-array v2, v2, [Ljava/lang/Class; sget-object v3, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class; const/4 v4, 0x0 aput-object v3, v2, v4 .line 22 invoke-virtual {v0, v1, v2}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; move-result-object v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 goto :goto_0 :catchall_0 const/4 v0, 0x0 :goto_0 sput-object v0, Lkotlinx/coroutines/internal/ConcurrentKt;->REMOVE_FUTURE_ON_CANCEL:Ljava/lang/reflect/Method; return-void .end method .method public static final removeFutureOnCancel(Ljava/util/concurrent/Executor;)Z .locals 5 const/4 v0, 0x0 .line 30 :try_start_0 instance-of v1, p0, Ljava/util/concurrent/ScheduledThreadPoolExecutor; if-eqz v1, :cond_0 check-cast p0, Ljava/util/concurrent/ScheduledThreadPoolExecutor; goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 if-nez p0, :cond_1 return v0 :cond_1 sget-object v1, Lkotlinx/coroutines/internal/ConcurrentKt;->REMOVE_FUTURE_ON_CANCEL:Ljava/lang/reflect/Method; if-nez v1, :cond_2 return v0 :cond_2 const/4 v2, 0x1 new-array v3, v2, [Ljava/lang/Object; sget-object v4, Ljava/lang/Boolean;->TRUE:Ljava/lang/Boolean; aput-object v4, v3, v0 .line 31 invoke-virtual {v1, p0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 return v2 :catchall_0 return v0 .end method