return getInvoker2(match, type);
}
static void bind(InvocationMatch<?> match, Iterable<ParameterDescriptor> parameters, Object target, Object[] args) throws SyntaxException, InvocationException {
for (ParameterDescriptor parameter : parameters) {
ParameterMatch parameterMatch = match.getParameter(parameter);
Object value = parameterMatch != null ? parameterMatch.computeValue() : null;
if (value == null) {
if (parameter.getDeclaredType().isPrimitive() || parameter.isRequired()) {
if (parameter instanceof ArgumentDescriptor) {
ArgumentDescriptor argument = (ArgumentDescriptor)parameter;
throw new SyntaxException("Missing argument " + argument.getName());