я знаю в scala я могу сказать
def foo(x: Int*) ...
foo(Seq(1,2,3): _*)
Но я не могу сказать
foo(Seq(1,2,3))
Поэтому должно происходить какое-то неявное преобразование. Что это за неявное преобразование? Каков фактический метод, который делает это возможным. Или, если я ошибаюсь, как это на самом деле работает?
_*
обсуждается в разделе 4.6. .3 спецификации языка. Там нет упоминания о неявном преобразовании. Кроме того,predef
исходный код имеет только одну ссылку_*
, где она используется, не определена. Я подозреваю, что это просто встроено в язык, вроде ключевого слова. - person jwvh   schedule 23.08.2019