docs: private void initMainParameterValue(String arg) {
          if (mainParameter == null) {
              throw new ParameterException(
                      "Was passed main parameter '" + arg + "' but no main parameter was defined in your arg class");
          }
  
          Object object = mainParameter.parameterized.get(mainParameter.object);
          Class<?> type = mainParameter.parameterized.getType();
  
          // If it's a List<String>, we might need to create that list and then add the value to it.
          if (List.class.isAssignableFrom(type)) {
              List result;
              if (object == null) {
                  result = Lists.newArrayList();
              } else {
                  result = (List) object;
              }
  
              if (mainParameter.firstTimeMainParameter) {
                  result.clear();
                  mainParameter.firstTimeMainParameter = false;
              }
  
              mainParameter.multipleValue = result;
              mainParameter.parameterized.set(mainParameter.object, result);
          }
  
      }