Нет, *
допускается только для ParamType, то есть типа параметра для анонимной функции или метода.
4.6.2 Синтаксис повторяющихся параметров: ParamType :: = Type ‘’ Последнее значение
параметр раздела параметров может
иметь суффикс «», например (..., х: Т *).
Тип такого повторного параметра
внутри метода есть последовательность
введите scala.Seq [T]. Методы с
повторные параметры T * принять
переменное число аргументов типа T.
Ошибка компилятора @ Пример Eastsun находится в первой строке, а не во второй. Это не должно быть разрешено:
scala> type VarArgs = (Any*)
defined type alias VarArgs
Я поднял ошибку .
Это ограничение аналогично параметрам по имени. В этом случае компилятор предотвращает создание псевдонима типа:
scala> type LazyString = (=> String) <console>:1: error: no by-name parameter type allowed here
type LazyString = (=> String)
Ваша последняя попытка является стандартным способом выразить это.