Arrays.asList() Смущает исходный код

В соответствии с этот исходный код для класса Arrays, метод asList передает массив конструктору нового ArrayList. Но такого конструктора нет. Не генерирует ли varargs массив, так как это возможно?

Вот источник asList:

public static <T> List<T> asList(T... a) {
    return new ArrayList<T>(a);
}