code: @Override
    public void setValue(final List<T> value) {
      if (list == null && value == null) {
        // fast exit
        return;
      }
      if (list != null && list.isSameValue(value)) {
        // setting the same value as the one being edited
        list.refresh();
        return;
      }
  
      if (list != null) {
        // Having entire value reset, so dump the wrapper gracefully
        list.detach();
      }
      if (value == null) {
        list = null;
      } else {
        list = new ListValidationEditorWrapper<>(value, chain, editorSource, parentDriver);
        list.attach();
      }
    }
docs: Sets the ListEditor's backing data.
  <p>
  If a null is passed in, the ListEditor will have no backing list and edits cannot be made.
  </p>
  
  @param value a List of data objects of type T