builder.withDelegate(typeElement.getSimpleName().toString());
for (VariableElement parameter : parameters) {
final boolean isInput = parameter.getAnnotation(Input.class) != null;
final boolean isOnlyParameter = parameters.size() == 1;
builder.withArgument(new Argument(box(parameter.asType()), parameter, isInput || isOnlyParameter));
}
} else {
for (VariableElement parameter : parameters) {
builder.withArgument(new Argument(box(parameter.asType()), parameter));
}