(CoroutineDebugger) unused classes removed / code cleanup
This commit is contained in:
-14
@@ -83,20 +83,6 @@ class DefaultCoroutineStackFrameItem(location: Location, spilledVariables: List<
|
||||
* - Kotlin/JavaStackFrame -> PreCoroutineStackFrameItem : CoroutinePreflightStackFrame.threadPreCoroutineFrames
|
||||
*
|
||||
*/
|
||||
class PreCoroutineStackFrameItem internal constructor(val frame: StackFrameProxyImpl, location: Location, variables: List<XNamedValue> = emptyList()) :
|
||||
CoroutineStackFrameItem(location, variables) {
|
||||
constructor(frame: StackFrameProxyImpl, variables: List<XNamedValue> = emptyList()) : this(frame, frame.location(), variables)
|
||||
|
||||
constructor(frame: StackFrameProxyImpl, restoredCoroutineStackFrameItem: CoroutineStackFrameItem) : this(
|
||||
frame,
|
||||
restoredCoroutineStackFrameItem.location,
|
||||
restoredCoroutineStackFrameItem.spilledVariables
|
||||
)
|
||||
|
||||
override fun createFrame(debugProcess: DebugProcessImpl): CapturedStackFrame {
|
||||
return PreCoroutineStackFrame(frame, debugProcess, this)
|
||||
}
|
||||
}
|
||||
|
||||
class RunningCoroutineStackFrameItem(
|
||||
val frame: StackFrameProxyImpl,
|
||||
|
||||
-15
@@ -79,21 +79,6 @@ class CreationCoroutineStackFrame(debugProcess: DebugProcessImpl, item: StackFra
|
||||
true
|
||||
}
|
||||
|
||||
/**
|
||||
* Acts as a joint frame, take variables from restored frame and information from the real 'exit' frame.
|
||||
*/
|
||||
class PreCoroutineStackFrame(val frame: StackFrameProxyImpl, val debugProcess: DebugProcessImpl, item: StackFrameItem) :
|
||||
CoroutineStackFrame(debugProcess, item) {
|
||||
override fun computeChildren(node: XCompositeNode) {
|
||||
val fakeStackFrame = debugProcess.invokeInManagerThread {
|
||||
val skipCoroutineFrame = SkipCoroutineStackFrameProxyImpl(frame)
|
||||
debugProcess.positionManager.createStackFrame(skipCoroutineFrame, debugProcess, frame.location())
|
||||
}
|
||||
fakeStackFrame?.computeChildren(node)
|
||||
// super.computeChildren(node)
|
||||
}
|
||||
}
|
||||
|
||||
open class CoroutineStackFrame(debugProcess: DebugProcessImpl, val item: StackFrameItem, val realStackFrame: XStackFrame? = null) :
|
||||
StackFrameItem.CapturedStackFrame(debugProcess, item) {
|
||||
override fun customizePresentation(component: ColoredTextContainer) {
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@ class DebugMetadata internal constructor(context: DefaultExecutionContext) :
|
||||
private val getStackTraceElementMethod = makeMethod("getStackTraceElement")
|
||||
private val getSpilledVariableFieldMappingMethod =
|
||||
makeMethod("getSpilledVariableFieldMapping", "(Lkotlin/coroutines/jvm/internal/BaseContinuationImpl;)[Ljava/lang/String;")
|
||||
val baseContinuationImpl = BaseContinuationImpl(context, this);
|
||||
val baseContinuationImpl = BaseContinuationImpl(context, this)
|
||||
|
||||
override fun fetchMirror(value: ObjectReference, context: DefaultExecutionContext): MirrorOfDebugProbesImpl? {
|
||||
// @TODO fix this
|
||||
|
||||
+1
-5
@@ -60,10 +60,7 @@ class CoroutineFrameBuilder {
|
||||
|
||||
// rest of the stack
|
||||
stackFrames.addAll(preflightFrame.threadPreCoroutineFrames.drop(1).mapIndexedNotNull { index, stackFrameProxyImpl ->
|
||||
// if (index == 0)
|
||||
// PreCoroutineStackFrameItem(stackFrameProxyImpl, firstRestoredFrame) // get location and variables from restored part
|
||||
// else
|
||||
suspendContext.invokeInManagerThread { buildRealStackFrameItem(stackFrameProxyImpl) }
|
||||
suspendContext.invokeInManagerThread { buildRealStackFrameItem(stackFrameProxyImpl) }
|
||||
})
|
||||
|
||||
return DoubleFrameList(stackFrames, preflightFrame.coroutineInfoData.creationStackTrace)
|
||||
@@ -81,7 +78,6 @@ class CoroutineFrameBuilder {
|
||||
return RunningCoroutineStackFrameItem(frame, location)
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Used by CoroutineStackFrameInterceptor to check if that frame is 'exit' coroutine frame.
|
||||
*/
|
||||
|
||||
-1
@@ -1,5 +1,4 @@
|
||||
package continuation
|
||||
// ATTACH_LIBRARY: coroutines
|
||||
// ATTACH_LIBRARY: maven(org.jetbrains.kotlinx:kotlinx-coroutines-debug:1.3.4)-javaagent
|
||||
|
||||
import kotlinx.coroutines.runBlocking
|
||||
|
||||
Reference in New Issue
Block a user