code: public Signature appendArg(String name, Class<?> type) {
          String[] newArgNames = new String[argNames.length + 1];
          System.arraycopy(argNames, 0, newArgNames, 0, argNames.length);
          newArgNames[argNames.length] = name;
          MethodType newMethodType = methodType.appendParameterTypes(type);
          return new Signature(newMethodType, newArgNames);
      }
docs: Append an argument (name + type) to the signature.
  
  @param name the name of the argument
  @param type the type of the argument
  @return a new signature with the added arguments