IList<ResolveResult> AddArgumentNamesIfNecessary(ResolveResult[] arguments, string[] argumentNames) {
if (argumentNames == null) {
return arguments;
}
else {
var result = new ResolveResult[arguments.Length];
for (int i = 0; i < arguments.Length; i++) {
result[i] = (argumentNames[i] != null ? new NamedArgumentResolveResult(argumentNames[i], arguments[i]) : arguments[i]);
}
return result;
}
}