void (@NotNull SuspendContextImpl suspendContext) { EvaluationContext evaluationContext = context.createEvaluationContext(value); if (!StringUtil.isEmpty(myChildrenExpandable.getReferenceExpression().getText())) { try { Value expanded = myChildrenExpandable.getEvaluator(evaluationContext.getProject()).evaluate(evaluationContext); if (expanded instanceof BooleanValue) { res.complete(((BooleanValue)expanded).booleanValue()); return; } } catch (EvaluateException e) { // ignored } } try { Value children = evaluateChildren(evaluationContext, parentDescriptor); DebugProcessImpl.getDefaultRenderer(value.type()) .isExpandableAsync(children, evaluationContext, parentDescriptor) .whenComplete((aBoolean, throwable) -> DebuggerUtilsAsync.completeFuture(aBoolean, throwable, res)); } catch (EvaluateException e) { res.complete(true); } }