code: private Object[] resolveArgs(Method method, List<String> wordsForArgs) {
  		List<MethodParameter> parameters = Utils.createMethodParameters(method).collect(Collectors.toList());
  		Object[] args = new Object[parameters.size()];
  		Arrays.fill(args, UNRESOLVED);
  		for (ParameterResolver resolver : parameterResolvers) {
  			for (int argIndex = 0; argIndex < args.length; argIndex++) {
  				MethodParameter parameter = parameters.get(argIndex);
  				if (args[argIndex] == UNRESOLVED && resolver.supports(parameter)) {
  					args[argIndex] = resolver.resolve(parameter, wordsForArgs).resolvedValue();
  				}
  			}
  		}
  		return args;
  	}
docs: Use all known {@link ParameterResolver}s to try to compute a value for each parameter
  of the method to invoke.
  @param method the method for which parameters should be computed
  @param wordsForArgs the list of 'words' that should be converted to parameter values.
  May include markers for passing parameters 'by name'
  @return an array containing resolved parameter values, or {@link #UNRESOLVED} for
  parameters that could not be resolved