.class public abstract Lkotlinx/coroutines/flow/SharedFlowKt; .super Ljava/lang/Object; .source "SourceFile" # static fields .field public static final NO_VALUE:Lkotlinx/coroutines/internal/Symbol; # direct methods .method static constructor ()V .locals 2 .line 713 new-instance v0, Lkotlinx/coroutines/internal/Symbol; const-string v1, "NO_VALUE" invoke-direct {v0, v1}, Lkotlinx/coroutines/internal/Symbol;->(Ljava/lang/String;)V sput-object v0, Lkotlinx/coroutines/flow/SharedFlowKt;->NO_VALUE:Lkotlinx/coroutines/internal/Symbol; return-void .end method .method public static final MutableSharedFlow(IILkotlinx/coroutines/channels/BufferOverflow;)Lkotlinx/coroutines/flow/MutableSharedFlow; .locals 1 if-ltz p0, :cond_4 if-ltz p1, :cond_3 if-gtz p0, :cond_1 if-gtz p1, :cond_1 .line 270 sget-object v0, Lkotlinx/coroutines/channels/BufferOverflow;->SUSPEND:Lkotlinx/coroutines/channels/BufferOverflow; if-ne p2, v0, :cond_0 goto :goto_0 .line 271 :cond_0 new-instance p0, Ljava/lang/StringBuilder; invoke-direct {p0}, Ljava/lang/StringBuilder;->()V const-string p1, "replay or extraBufferCapacity must be positive with non-default onBufferOverflow strategy " invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 .line 270 new-instance p1, Ljava/lang/IllegalArgumentException; invoke-virtual {p0}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object p0 invoke-direct {p1, p0}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 :cond_1 :goto_0 add-int/2addr p1, p0 if-gez p1, :cond_2 const p1, 0x7fffffff .line 275 :cond_2 new-instance v0, Lkotlinx/coroutines/flow/SharedFlowImpl; invoke-direct {v0, p0, p1, p2}, Lkotlinx/coroutines/flow/SharedFlowImpl;->(IILkotlinx/coroutines/channels/BufferOverflow;)V return-object v0 .line 269 :cond_3 new-instance p0, Ljava/lang/StringBuilder; invoke-direct {p0}, Ljava/lang/StringBuilder;->()V const-string p2, "extraBufferCapacity cannot be negative, but was " invoke-virtual {p0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 new-instance p1, Ljava/lang/IllegalArgumentException; invoke-virtual {p0}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object p0 invoke-direct {p1, p0}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .line 268 :cond_4 new-instance p1, Ljava/lang/StringBuilder; invoke-direct {p1}, Ljava/lang/StringBuilder;->()V const-string p2, "replay cannot be negative, but was " invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 new-instance p1, Ljava/lang/IllegalArgumentException; invoke-virtual {p0}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object p0 invoke-direct {p1, p0}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method .method public static synthetic MutableSharedFlow$default(IILkotlinx/coroutines/channels/BufferOverflow;ILjava/lang/Object;)Lkotlinx/coroutines/flow/MutableSharedFlow; .locals 1 and-int/lit8 p4, p3, 0x1 const/4 v0, 0x0 if-eqz p4, :cond_0 move p0, v0 :cond_0 and-int/lit8 p4, p3, 0x2 if-eqz p4, :cond_1 move p1, v0 :cond_1 and-int/lit8 p3, p3, 0x4 if-eqz p3, :cond_2 .line 266 sget-object p2, Lkotlinx/coroutines/channels/BufferOverflow;->SUSPEND:Lkotlinx/coroutines/channels/BufferOverflow; .line 263 :cond_2 invoke-static {p0, p1, p2}, Lkotlinx/coroutines/flow/SharedFlowKt;->MutableSharedFlow(IILkotlinx/coroutines/channels/BufferOverflow;)Lkotlinx/coroutines/flow/MutableSharedFlow; move-result-object p0 return-object p0 .end method .method public static final synthetic access$getBufferAt([Ljava/lang/Object;J)Ljava/lang/Object; .locals 0 .line 1 invoke-static {p0, p1, p2}, Lkotlinx/coroutines/flow/SharedFlowKt;->getBufferAt([Ljava/lang/Object;J)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final synthetic access$setBufferAt([Ljava/lang/Object;JLjava/lang/Object;)V .locals 0 .line 1 invoke-static {p0, p1, p2, p3}, Lkotlinx/coroutines/flow/SharedFlowKt;->setBufferAt([Ljava/lang/Object;JLjava/lang/Object;)V return-void .end method .method public static final fuseSharedFlow(Lkotlinx/coroutines/flow/SharedFlow;Lkotlin/coroutines/CoroutineContext;ILkotlinx/coroutines/channels/BufferOverflow;)Lkotlinx/coroutines/flow/Flow; .locals 1 if-eqz p2, :cond_0 const/4 v0, -0x3 if-ne p2, v0, :cond_1 .line 725 :cond_0 sget-object v0, Lkotlinx/coroutines/channels/BufferOverflow;->SUSPEND:Lkotlinx/coroutines/channels/BufferOverflow; if-ne p3, v0, :cond_1 return-object p0 .line 729 :cond_1 new-instance v0, Lkotlinx/coroutines/flow/internal/ChannelFlowOperatorImpl; invoke-direct {v0, p0, p1, p2, p3}, Lkotlinx/coroutines/flow/internal/ChannelFlowOperatorImpl;->(Lkotlinx/coroutines/flow/Flow;Lkotlin/coroutines/CoroutineContext;ILkotlinx/coroutines/channels/BufferOverflow;)V return-object v0 .end method .method public static final getBufferAt([Ljava/lang/Object;J)Ljava/lang/Object; .locals 0 long-to-int p1, p1 .line 715 array-length p2, p0 add-int/lit8 p2, p2, -0x1 and-int/2addr p1, p2 aget-object p0, p0, p1 return-object p0 .end method .method public static final setBufferAt([Ljava/lang/Object;JLjava/lang/Object;)V .locals 0 long-to-int p1, p1 .line 716 array-length p2, p0 add-int/lit8 p2, p2, -0x1 and-int/2addr p1, p2 aput-object p3, p0, p1 return-void .end method