2013-11-17 3 views
2

В течение второй недели лекций от принципов Реактивной программировании класса на Coursera, был примером, который содержал этот интересный кусок кода:Создание нескольких новых экземпляров из одного лайнера

val notIn1, notIn2, notOut = new Wire 

Что особенность языка используется здесь?

Это создает три уникальные экземпляры (добавление Println конструктору гравюр 3 линии), поэтому его не переводится на что-то вроде

val notIn1 = notIn2 = notOut = new Wire 

Результат вызова new Wire не возвращает кортеж, поэтому я не думаю, что это соответствие шаблону. Есть идеи?

ответ

9

От Scala Language Specification (4.1 Соотношения деклараций и определения):

Определение Значения валар , ..., р п = е является сокращенным для последовательности определения стоимости valp = e; ...; valp n = e.

Смежные вопросы