private CompletableFuture<List<DebuggerTreeNode>> createNodes(List<Field> fields,
                                                                EvaluationContext evaluationContext,
                                                                ValueDescriptorImpl parentDescriptor,
                                                                NodeManager nodeManager,
                                                                NodeDescriptorFactory nodeDescriptorFactory,
                                                                ObjectReference objRef,
                                                                Set<String> names) {
    return DebuggerUtilsAsync.getValues(objRef, fields)
      .thenApply(cachedValues -> {
        List<DebuggerTreeNode> res = new ArrayList<>(fields.size());
        for (Field field : fields) {
          FieldDescriptorImpl fieldDescriptor =
            (FieldDescriptorImpl)createFieldDescriptor(parentDescriptor, nodeDescriptorFactory, objRef, field, evaluationContext);
          if (cachedValues != null) {
            fieldDescriptor.setValue(cachedValues.get(field));
          }
          if (!names.add(fieldDescriptor.getName())) {
            fieldDescriptor.putUserData(FieldDescriptor.SHOW_DECLARING_TYPE, Boolean.TRUE);
          }
          res.add(nodeManager.createNode(fieldDescriptor, evaluationContext));
        }
        return res;
      });
  }
private CompletableFuture<List<DebuggerTreeNode>> createNodes(List<Field> fields,
                                                                EvaluationContext evaluationContext,
                                                                ValueDescriptorImpl parentDescriptor,
                                                                NodeManager nodeManager,
                                                                NodeDescriptorFactory nodeDescriptorFactory,
                                                                ObjectReference objRef,
                                                                Set<String> names)