code: private void checkConstructorArguments(int arguments) {
          if (arguments == 0 && (typeDef.getConstructors() == null || typeDef.getConstructors().isEmpty())) {
              return;
          }
  
          for (Method m : typeDef.getConstructors()) {
              int a = m.getArguments() != null ? m.getArguments().size() : 0;
              if (a == arguments) {
                  return;
              }
          }
          throw new IllegalArgumentException("No constructor found for " + typeDef.getName() + " with " + arguments + " arguments.");
  
      }
docs: Checks that a constructor with the required number of arguments is found.
  @param arguments