aboutsummaryrefslogtreecommitdiffstats
path: root/kotlinx-coroutines-core/jvm/src/debug/internal/DebugProbes.kt
diff options
context:
space:
mode:
Diffstat (limited to 'kotlinx-coroutines-core/jvm/src/debug/internal/DebugProbes.kt')
-rw-r--r--kotlinx-coroutines-core/jvm/src/debug/internal/DebugProbes.kt22
1 files changed, 22 insertions, 0 deletions
diff --git a/kotlinx-coroutines-core/jvm/src/debug/internal/DebugProbes.kt b/kotlinx-coroutines-core/jvm/src/debug/internal/DebugProbes.kt
new file mode 100644
index 00000000..8dc5b7c2
--- /dev/null
+++ b/kotlinx-coroutines-core/jvm/src/debug/internal/DebugProbes.kt
@@ -0,0 +1,22 @@
+/*
+ * Copyright 2016-2021 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
+@file:Suppress("unused")
+
+package kotlinx.coroutines.debug.internal
+
+import kotlin.coroutines.*
+
+/*
+ * This class is used by ByteBuddy from kotlinx-coroutines-debug as kotlin.coroutines.jvm.internal.DebugProbesKt replacement.
+ * In theory, it should belong to kotlinx-coroutines-debug, but placing it here significantly simplifies the
+ * Android AS debugger that does on-load DEX transformation
+ */
+
+// Stubs which are injected as coroutine probes. Require direct match of signatures
+internal fun probeCoroutineResumed(frame: Continuation<*>) = DebugProbesImpl.probeCoroutineResumed(frame)
+
+internal fun probeCoroutineSuspended(frame: Continuation<*>) = DebugProbesImpl.probeCoroutineSuspended(frame)
+internal fun <T> probeCoroutineCreated(completion: Continuation<T>): Continuation<T> =
+ DebugProbesImpl.probeCoroutineCreated(completion)