List<XStackFrame> (@NotNull StackFrameDescriptorImpl descriptor) { return iterate(positionManager -> { if (positionManager instanceof PositionManagerWithMultipleStackFrames positionManagerWithMultipleStackFrames) { List<XStackFrame> stackFrames = positionManagerWithMultipleStackFrames.createStackFrames(descriptor); if (stackFrames != null) { return stackFrames; } } else if (positionManager instanceof PositionManagerEx positionManagerEx) { XStackFrame xStackFrame = positionManagerEx.createStackFrame(descriptor); if (xStackFrame != null) { return Collections.singletonList(xStackFrame); } } throw NoDataException.INSTANCE; }, Collections.emptyList(), null, false); }