Reactivemongo - где определяется оператор |›››?

Чтение http://reactivemongo.org/releases/0.11/documentation/tutorial/consume-streams.html в нем говорится

Метод apply в Enumerator имеет псевдоним оператора |>>>. Поэтому мы можем переписать последнюю строку следующим образом: enumeratorOfPeople |>>> processDocuments.

Где этот оператор определен в документе API?

Чтение https://www.playframework.com/documentation/2.0/api/scala/play/api/libs/iteratee/Enumerator$.html определяет применение как:

def
apply [E] (in: E*): Enumerator[E]
Create an Enumerator from a set of values

Но нет упоминания об операторе |>>>?


person blue-sky    schedule 25.05.2016    source источник
comment
Не конкретно для ReactiveMongo, а для Play Iteratee   -  person cchantep    schedule 25.05.2016


Ответы (1)


Похоже на опечатку.

Псевдоним для apply называется |>>. |>>> немного отличается.

Примечание: вы просматривали документацию для Enumerator объект. Вам нужно посмотреть на Enumerator черта. Кроме того, вы просматривали устаревшую документацию (2.0).

В верхнем левом углу Скаладока есть значок, который сообщает вам, на что вы смотрите:

  • класс класс
  • класс с  объект-компаньон класс с объектом-компаньоном (щелкните для переключения)
  • черта черта
  • черта с  объект-компаньон черта с объектом-компаньоном (щелкните для переключения)
  • object объект
  • сопутствующий объект  для класса объект-компаньон для класса (щелкните для переключения)
  • сопутствующий объект  для черты объект-компаньон для черты (щелкните, чтобы переключить)
  • сопутствующий объект  для абстрактного типа сопутствующий объект для абстрактного типа (щелкните для переключения)
  • package пакет
  • абстрактный тип  абстрактный тип
  • абстрактный тип  с сопутствующим объектом абстрактный тип с сопутствующим объектом (щелкните для переключения)
person Jörg W Mittag    schedule 25.05.2016
comment
«Псевдоним для применения называется |››» — это шаблон Scala? Я не вижу разницы между 'apply alias' и новым методом, похожим на apply : apply signature - '(i: Iteratee[E, A]): Future[Iteratee[E, A]]' while '|› ›' подпись похожа - '|››[A](i: Iteratee[E, A]): Future[Iteratee[E, A]]' - person blue-sky; 25.05.2016
comment
Нет, это не шаблон Scala. Разработчики Play решили создать метод с именем |>>, который делает то же самое, что и apply. Вот и все. Как видите, определение в исходном коде просто def |>>[A](i: Iteratee[E, A]): Future[Iteratee[E, A]] = apply(i) Примечание: подпись не похожа, она идентична, и метод |>> просто вызывает apply. - person Jörg W Mittag; 25.05.2016
comment
какая польза от метода применения в этом случае? При создании нового Enumerator с использованием apply : Enumerator[play.api.libs.iteratee.Iteratee[reactivemongo.bson.BSONDocument,String]](myFunction) не является пригодной для использования функцией, поскольку значение Enumerator не было установлено? - person blue-sky; 25.05.2016