Files
rr3-apk/decompiled-community/sources/kotlinx/coroutines/channels/BufferedChannelKt.java
Daniel Elliott c080f0d97f Add Discord community version (64-bit only)
- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
2026-02-18 15:48:36 -08:00

102 lines
4.2 KiB
Java

package kotlinx.coroutines.channels;
import kotlin.jvm.functions.Function1;
import kotlin.reflect.KFunction;
import kotlinx.coroutines.CancellableContinuation;
import kotlinx.coroutines.internal.Symbol;
import kotlinx.coroutines.internal.SystemPropsKt__SystemProps_commonKt;
/* loaded from: classes5.dex */
public abstract class BufferedChannelKt {
public static final Symbol BUFFERED;
public static final Symbol CHANNEL_CLOSED;
public static final Symbol CLOSE_HANDLER_CLOSED;
public static final Symbol CLOSE_HANDLER_INVOKED;
public static final Symbol DONE_RCV;
public static final int EXPAND_BUFFER_COMPLETION_WAIT_ITERATIONS;
public static final Symbol FAILED;
public static final Symbol INTERRUPTED_RCV;
public static final Symbol INTERRUPTED_SEND;
public static final Symbol IN_BUFFER;
public static final Symbol NO_CLOSE_CAUSE;
public static final Symbol NO_RECEIVE_RESULT;
public static final ChannelSegment NULL_SEGMENT = new ChannelSegment(-1, null, null, 0);
public static final Symbol POISONED;
public static final Symbol RESUMING_BY_EB;
public static final Symbol RESUMING_BY_RCV;
public static final int SEGMENT_SIZE;
public static final Symbol SUSPEND;
public static final Symbol SUSPEND_NO_WAITER;
public static final long constructEBCompletedAndPauseFlag(long j, boolean z) {
return (z ? 4611686018427387904L : 0L) + j;
}
public static final long constructSendersAndCloseStatus(long j, int i) {
return (i << 60) + j;
}
public static final Symbol getCHANNEL_CLOSED() {
return CHANNEL_CLOSED;
}
public static final long initialBufferEnd(int i) {
if (i == 0) {
return 0L;
}
if (i != Integer.MAX_VALUE) {
return i;
}
return Long.MAX_VALUE;
}
public static final KFunction createSegmentFunction() {
return BufferedChannelKt$createSegmentFunction$1.INSTANCE;
}
public static final ChannelSegment createSegment(long j, ChannelSegment channelSegment) {
return new ChannelSegment(j, channelSegment, channelSegment.getChannel(), 0);
}
static {
int systemProp$default;
int systemProp$default2;
systemProp$default = SystemPropsKt__SystemProps_commonKt.systemProp$default("kotlinx.coroutines.bufferedChannel.segmentSize", 32, 0, 0, 12, (Object) null);
SEGMENT_SIZE = systemProp$default;
systemProp$default2 = SystemPropsKt__SystemProps_commonKt.systemProp$default("kotlinx.coroutines.bufferedChannel.expandBufferCompletionWaitIterations", 10000, 0, 0, 12, (Object) null);
EXPAND_BUFFER_COMPLETION_WAIT_ITERATIONS = systemProp$default2;
BUFFERED = new Symbol("BUFFERED");
IN_BUFFER = new Symbol("SHOULD_BUFFER");
RESUMING_BY_RCV = new Symbol("S_RESUMING_BY_RCV");
RESUMING_BY_EB = new Symbol("RESUMING_BY_EB");
POISONED = new Symbol("POISONED");
DONE_RCV = new Symbol("DONE_RCV");
INTERRUPTED_SEND = new Symbol("INTERRUPTED_SEND");
INTERRUPTED_RCV = new Symbol("INTERRUPTED_RCV");
CHANNEL_CLOSED = new Symbol("CHANNEL_CLOSED");
SUSPEND = new Symbol("SUSPEND");
SUSPEND_NO_WAITER = new Symbol("SUSPEND_NO_WAITER");
FAILED = new Symbol("FAILED");
NO_RECEIVE_RESULT = new Symbol("NO_RECEIVE_RESULT");
CLOSE_HANDLER_CLOSED = new Symbol("CLOSE_HANDLER_CLOSED");
CLOSE_HANDLER_INVOKED = new Symbol("CLOSE_HANDLER_INVOKED");
NO_CLOSE_CAUSE = new Symbol("NO_CLOSE_CAUSE");
}
public static /* synthetic */ boolean tryResume0$default(CancellableContinuation cancellableContinuation, Object obj, Function1 function1, int i, Object obj2) {
if ((i & 2) != 0) {
function1 = null;
}
return tryResume0(cancellableContinuation, obj, function1);
}
public static final boolean tryResume0(CancellableContinuation cancellableContinuation, Object obj, Function1 function1) {
Object tryResume = cancellableContinuation.tryResume(obj, null, function1);
if (tryResume == null) {
return false;
}
cancellableContinuation.completeResume(tryResume);
return true;
}
}