Как опция действует как коллекция, если она не одна?

Принятый ответ на Как преобразовать Некоторый ( "" ) в None в однострочном?" принял форму:

def convert(x: Option[String]) : Option[String] = 
    x.map(_.trim()).filterNot(_.isEmpty())

Моя проблема в том, что я не могу понять, как найти, что означает, что коллекция, возвращаемая filterNot, преобразуется в Option. Я просмотрел конструкторы Scaladoc для Option, объект Option, Predef, Seq и Seq Object. Я полагаю, что там, вероятно, есть что-то скрытое, но как его найти?

Ответы

Ответ 1

В scaladoc вы можете нажать кнопку "по наследованию" (она отображается чуть выше описания методов). Это должно помочь вам найти конкретную реализацию данного метода. Переход к этому классу и посмотрите на источник (ссылки на источник отображаются в описании класса/свойства/объекта).

В случае параметров существуют методы, называемые map, filter и т.д.

Если требуется неявное значение, вы заметите либо предложение implicit в списке аргументов, либо связанный с ним параметр, как [A: MyImplicit] в параметрах. Неявные обычно импортируются или объявляются в сопутствующем объекте.

Если у вас есть еще один вопрос/пример спецификации, пожалуйста, дайте мне знать.