FlowableScalarXMap.smali
.class public final Lio/reactivex/internal/operators/flowable/FlowableScalarXMap;
.super Ljava/lang/Object;
.source "FlowableScalarXMap.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lio/reactivex/internal/operators/flowable/FlowableScalarXMap$ScalarXMapFlowable;
}
.end annotation
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method private constructor <init>()V
.registers 3
.line 33
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 34
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "No instances!"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public static scalarXMap(Ljava/lang/Object;Lio/reactivex/functions/Function;)Lio/reactivex/Flowable;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
"U:",
"Ljava/lang/Object;",
">(TT;",
"Lio/reactivex/functions/Function<",
"-TT;+",
"Lorg/reactivestreams/Publisher<",
"+TU;>;>;)",
"Lio/reactivex/Flowable<",
"TU;>;"
}
.end annotation
.line 112
.local p0, "value":Ljava/lang/Object;, "TT;"
.local p1, "mapper":Lio/reactivex/functions/Function;, "Lio/reactivex/functions/Function<-TT;+Lorg/reactivestreams/Publisher<+TU;>;>;"
new-instance v0, Lio/reactivex/internal/operators/flowable/FlowableScalarXMap$ScalarXMapFlowable;
invoke-direct {v0, p0, p1}, Lio/reactivex/internal/operators/flowable/FlowableScalarXMap$ScalarXMapFlowable;-><init>(Ljava/lang/Object;Lio/reactivex/functions/Function;)V
invoke-static {v0}, Lio/reactivex/plugins/RxJavaPlugins;->onAssembly(Lio/reactivex/Flowable;)Lio/reactivex/Flowable;
move-result-object v0
return-object v0
.end method
.method public static tryScalarXMapSubscribe(Lorg/reactivestreams/Publisher;Lorg/reactivestreams/Subscriber;Lio/reactivex/functions/Function;)Z
.registers 8
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
"R:",
"Ljava/lang/Object;",
">(",
"Lorg/reactivestreams/Publisher<",
"TT;>;",
"Lorg/reactivestreams/Subscriber<",
"-TR;>;",
"Lio/reactivex/functions/Function<",
"-TT;+",
"Lorg/reactivestreams/Publisher<",
"+TR;>;>;)Z"
}
.end annotation
.line 50
.local p0, "source":Lorg/reactivestreams/Publisher;, "Lorg/reactivestreams/Publisher<TT;>;"
.local p1, "subscriber":Lorg/reactivestreams/Subscriber;, "Lorg/reactivestreams/Subscriber<-TR;>;"
.local p2, "mapper":Lio/reactivex/functions/Function;, "Lio/reactivex/functions/Function<-TT;+Lorg/reactivestreams/Publisher<+TR;>;>;"
instance-of v0, p0, Ljava/util/concurrent/Callable;
if-eqz v0, :cond_57
.line 54
const/4 v0, 0x1
:try_start_5
move-object v1, p0
check-cast v1, Ljava/util/concurrent/Callable;
invoke-interface {v1}, Ljava/util/concurrent/Callable;->call()Ljava/lang/Object;
move-result-object v1
:try_end_c
.catchall {:try_start_5 .. :try_end_c} :catchall_4f
.line 59
.local v1, "t":Ljava/lang/Object;, "TT;"
nop
.line 61
if-nez v1, :cond_13
.line 62
invoke-static {p1}, Lio/reactivex/internal/subscriptions/EmptySubscription;->complete(Lorg/reactivestreams/Subscriber;)V
.line 63
return v0
.line 69
:cond_13
:try_start_13
invoke-interface {p2, v1}, Lio/reactivex/functions/Function;->apply(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
const-string v3, "The mapper returned a null Publisher"
invoke-static {v2, v3}, Lio/reactivex/internal/functions/ObjectHelper;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Lorg/reactivestreams/Publisher;
:try_end_1f
.catchall {:try_start_13 .. :try_end_1f} :catchall_47
.line 74
.local v2, "r":Lorg/reactivestreams/Publisher;, "Lorg/reactivestreams/Publisher<+TR;>;"
nop
.line 76
instance-of v3, v2, Ljava/util/concurrent/Callable;
if-eqz v3, :cond_43
.line 80
:try_start_24
move-object v3, v2
check-cast v3, Ljava/util/concurrent/Callable;
invoke-interface {v3}, Ljava/util/concurrent/Callable;->call()Ljava/lang/Object;
move-result-object v3
:try_end_2b
.catchall {:try_start_24 .. :try_end_2b} :catchall_3b
.line 85
.local v3, "u":Ljava/lang/Object;, "TR;"
nop
.line 87
if-nez v3, :cond_32
.line 88
invoke-static {p1}, Lio/reactivex/internal/subscriptions/EmptySubscription;->complete(Lorg/reactivestreams/Subscriber;)V
.line 89
return v0
.line 91
:cond_32
new-instance v4, Lio/reactivex/internal/subscriptions/ScalarSubscription;
invoke-direct {v4, p1, v3}, Lio/reactivex/internal/subscriptions/ScalarSubscription;-><init>(Lorg/reactivestreams/Subscriber;Ljava/lang/Object;)V
invoke-interface {p1, v4}, Lorg/reactivestreams/Subscriber;->onSubscribe(Lorg/reactivestreams/Subscription;)V
.line 92
.end local v3 # "u":Ljava/lang/Object;, "TR;"
goto :goto_46
.line 81
:catchall_3b
move-exception v3
.line 82
.local v3, "ex":Ljava/lang/Throwable;
invoke-static {v3}, Lio/reactivex/exceptions/Exceptions;->throwIfFatal(Ljava/lang/Throwable;)V
.line 83
invoke-static {v3, p1}, Lio/reactivex/internal/subscriptions/EmptySubscription;->error(Ljava/lang/Throwable;Lorg/reactivestreams/Subscriber;)V
.line 84
return v0
.line 93
.end local v3 # "ex":Ljava/lang/Throwable;
:cond_43
invoke-interface {v2, p1}, Lorg/reactivestreams/Publisher;->subscribe(Lorg/reactivestreams/Subscriber;)V
.line 96
:goto_46
return v0
.line 70
.end local v2 # "r":Lorg/reactivestreams/Publisher;, "Lorg/reactivestreams/Publisher<+TR;>;"
:catchall_47
move-exception v2
.line 71
.local v2, "ex":Ljava/lang/Throwable;
invoke-static {v2}, Lio/reactivex/exceptions/Exceptions;->throwIfFatal(Ljava/lang/Throwable;)V
.line 72
invoke-static {v2, p1}, Lio/reactivex/internal/subscriptions/EmptySubscription;->error(Ljava/lang/Throwable;Lorg/reactivestreams/Subscriber;)V
.line 73
return v0
.line 55
.end local v1 # "t":Ljava/lang/Object;, "TT;"
.end local v2 # "ex":Ljava/lang/Throwable;
:catchall_4f
move-exception v1
.line 56
.local v1, "ex":Ljava/lang/Throwable;
invoke-static {v1}, Lio/reactivex/exceptions/Exceptions;->throwIfFatal(Ljava/lang/Throwable;)V
.line 57
invoke-static {v1, p1}, Lio/reactivex/internal/subscriptions/EmptySubscription;->error(Ljava/lang/Throwable;Lorg/reactivestreams/Subscriber;)V
.line 58
return v0
.line 98
.end local v1 # "ex":Ljava/lang/Throwable;
:cond_57
const/4 v0, 0x0
return v0
.end method