code: public ImmutableList<ASTParameter> getParameters(Class<?>[] parameterTypes, Type[] genericParameterTypes, Annotation[][] parameterAnnotations) {
  
          ImmutableList.Builder<ASTParameter> astParameterBuilder = ImmutableList.builder();
  
          for (int i = 0; i < parameterTypes.length; i++) {
              ASTType parameterType = getType(parameterTypes[i], nullSafeAccess(genericParameterTypes, i));
              String name = null;
              for (Annotation parameterAnnotation : parameterAnnotations[i]) {
                  if(parameterAnnotation.annotationType().equals(ASTParameterName.class)){
                      name = ((ASTParameterName)parameterAnnotation).value();
                  }
              }
              astParameterBuilder.add(
                      new ASTClassParameter(
                              name,
                              parameterAnnotations[i],
                              parameterType,
                              getAnnotations(parameterAnnotations[i])));
          }
  
          return astParameterBuilder.build();
      }
docs: Builds the parameters for a set of parallel arrays: type and annotations
  
  @param parameterTypes
  @param genericParameterTypes
  @param parameterAnnotations  @return AST Parameters