Spec-Zone.ru › Scala 2.12 Library

Особенность scala.collection.generic.GenericTraversableTemplate

trait GenericTraversableTemplate[+A, +CC[X] <: GenTraversable[X]] extends HasNewBuilder[A, CC[A]]

Шаблонный класс для компаньонов объектов regular коллекций, которые представляют неограниченный тип высшего порядка.

A

Тип элементов коллекции.

CC

Тип конструктора, представляющего класс коллекции.

Source
GenericTraversableTemplate.scala
Since

2.8

Линейные супертипы
Известные подклассы

Абстрактные члены-значения

abstract def companion: GenericCompanion[CC]

Объект-компаньон-фабрика, который создает экземпляры класса Traversable. (или его Iterable суперкласса, где класс Traversable не является Seq.)

abstract def head: A

Выбирает первый элемент этой коллекции.

returns

первый элемент этой коллекции.

Исключения

NoSuchElementException, если коллекция пуста.

abstract def isEmpty: Boolean

Проверяет, является ли эта коллекция пустой.

returns

true если коллекция не содержит элементов, false в противном случае.

Члены-значения конкретного типа

final def !=(arg0: Any): Boolean

Проверка двух объектов на неравенство.

возвращает

true если !(this == that), в противном случае false.

Определяющие классы
AnyRef → Any

final def ##(): Int

Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для числовых типов возвращает значение хэша, соответствующее равенству значений: если два экземпляра типа значения сравниваются как true, то ## для каждого из них будет возвращать одинаковое значение хэша. Для null возвращает значение хэшкода, где null.hashCode выбрасывает NullPointerException.

возвращает

значение хэша, согласованное с ==

Определяющие классы
AnyRef → Any

def +(other: String): String

Неявный
Этот член добавлен неявным преобразованием из GenericTraversableTemplate[A, CC] в any2stringadd[GenericTraversableTemplate[A, CC]] с помощью метода any2stringadd в scala.Predef.
Определяющие классы
any2stringadd

def ->[B](y: B): (GenericTraversableTemplate[A, CC], B)

Неявный
Этот член добавлен неявным преобразованием из GenericTraversableTemplate[A, CC] в ArrowAssoc[GenericTraversableTemplate[A, CC]] с помощью метода ArrowAssoc в scala.Predef.
Определяющие классы
ArrowAssoc
Аннотации
@inline()

final def ==(arg0: Any): Boolean

Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).

возвращает

true если объект-получатель эквивалентен аргументу; false в противном случае.

Определяющие классы
AnyRef → Any

final def asInstanceOf[T0]: T0

Преобразование объекта-получателя к типу T0.

Обратите внимание, что успех преобразования во время выполнения зависит от семантики стирания Scala. Поэтому выражение 1.asInstanceOf[String] бросит исключение ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] этого не сделает. В последнем примере, поскольку тип аргумента стирается во время компиляции, невозможно проверить, содержат ли элементы списка требуемый тип.

возвращает

объект-получатель.

Определяющие классы
Any
Исключения

ClassCastException, если объект-получатель не является экземпляром стираемого типа T0.

def clone(): AnyRef

Создает копию объекта-получателя.

По умолчанию реализация метода clone зависит от платформы.

возвращает

копию объекта-получателя.

Атрибуты
protected[lang]
Определяющие классы
AnyRef
Аннотации
@throws( ... ) @native()
Примечание

не указано SLS в качестве члена AnyRef

def ensuring(cond: (GenericTraversableTemplate[A, CC]) ⇒ Boolean, msg: ⇒ Any): GenericTraversableTemplate[A, CC]

Неявный
Этот член добавлен неявным преобразованием из GenericTraversableTemplate[A, CC] в Ensuring[GenericTraversableTemplate[A, CC]] с помощью метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: (GenericTraversableTemplate[A, CC]) ⇒ Boolean): GenericTraversableTemplate[A, CC]

Implicit
Этот член добавлен неявным преобразованием из GenericTraversableTemplate[A, CC] в Ensuring[GenericTraversableTemplate[A, CC]] с помощью метода Ensuring в scala.Predef.
Definition Classes
Ensuring

def ensuring(cond: Boolean, msg: ⇒ Any): GenericTraversableTemplate[A, CC]

Implicit
Этот член добавлен неявным преобразованием из GenericTraversableTemplate[A, CC] в Ensuring[GenericTraversableTemplate[A, CC]] с помощью метода Ensuring в scala.Predef.
Definition Classes
Ensuring

def ensuring(cond: Boolean): GenericTraversableTemplate[A, CC]

Implicit
Этот член добавлен неявным преобразованием из GenericTraversableTemplate[A, CC] в Ensuring[GenericTraversableTemplate[A, CC]] с помощью метода Ensuring в scala.Predef.
Definition Classes
Ensuring

final def eq(arg0: AnyRef): Boolean

Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).

Метод eq реализует отношение эквивалентности на непустых экземплярах AnyRef, и обладает тремя дополнительными свойствами:

    Он согласован: для любых непустых экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого непустого экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false. null.eq(null) возвращает true.

При переопределении методов equals или hashCode важно обеспечить согласованность их поведения с равенством ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны иметь одинаковое значение хеша (o1.hashCode == o2.hashCode).

returns

true если аргумент является ссылкой на объект-получатель; false в противном случае.

Definition Classes
AnyRef

def equals(arg0: Any): Boolean

Метод равенства для ссылочных типов. По умолчанию делегирует вызов методу eq.

См. также equals в scala.Any.

returns

true если объект-получатель эквивалентен аргументу; false в противном случае.

Definition Classes
AnyRef → Any

def finalize(): Unit

Вызывается сборщиком мусора для объекта-получателя, когда на объект больше нет ссылок.

Подробности о том, когда и если вызывается метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями зависят от платформы.

Attributes
protected[lang]
Definition Classes
AnyRef
Annotations
@throws( classOf[java.lang.Throwable] )
Note

не специфицировано SLS как член AnyRef

def flatten[B]: Traversable[B]

[use case]

Преобразует это множество коллекций traversable в множество, образованное элементами этих коллекций traversable.

Тип результирующего множества будет определяться статическим типом коллекции. Например:

val xs = List(
           Set(1, 2, 3),
           Set(1, 2, 3)
         ).flatten
// xs == List(1, 2, 3, 1, 2, 3)

val ys = Set(
           List(1, 2, 3),
           List(3, 2, 1)
         ).flatten
// ys == Set(1, 2, 3)
B

тип элементов каждой коллекции traversable.

returns

новая коллекция, полученная в результате конкатенации всех коллекций элементов.

Полная сигнатура

abstract def foreach(f: (A) ⇒ Unit): Unit

[сценарий использования]
f

функция, которая применяется для побочного эффекта к каждому элементу. Результат функции f игнорируется.

Полная сигнатура

def formatted(fmtstr: String): String

Возвращает строку, отформатированную в соответствии с заданной format строкой. Строки форматирования аналогичны String.format (@см. java.lang.String.format).

Неявный
Этот член добавлен неявным преобразованием из GenericTraversableTemplate[A, CC] в StringFormat[GenericTraversableTemplate[A, CC]] с помощью метода StringFormat в scala.Predef.
Определяющие классы
StringFormat
Аннотации
@inline()

def genericBuilder[B]: Builder[B, CC[B]]

final def getClass(): Class[_]

Возвращает представление класса во время выполнения объекта.

возвращает

объект класса, соответствующий типу получателя во время выполнения.

Определяющие классы
AnyRef → Any
Аннотации
@native()

def hashCode(): Int

Метод hashCode для ссылочных типов. См. hashCode в scala.Any.

возвращает

значение хэш-кода для этого объекта.

Определяющие классы
AnyRef → Any
Аннотации
@native()

final def isInstanceOf[T0]: Boolean

Проверка, является ли динамический тип объекта получателя T0.

Обратите внимание, что результат теста определяется семантикой стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, так как тип аргумента стирается во время компиляции, невозможно проверить, соответствуют ли содержимое списка указанному типу.

возвращает

true если объект получателя является экземпляром стирания типа T0; false в противном случае.

Определяющие классы
Any

final def ne(arg0: AnyRef): Boolean

Эквивалентно !(this eq that).

возвращает

true если аргумент не является ссылкой на объект получателя; false в противном случае.

Определяющие классы
AnyRef

def newBuilder: Builder[A, CC[A]]

Построитель, создающий экземпляры типа Traversable[A]

Атрибуты
protected[this]
Определяющие классы
GenericTraversableTemplate → HasNewBuilder

final def notify(): Unit

Разбуживает единственную нить, ожидающую монитора объекта получателя.

Определяющие классы
AnyRef
Аннотации
@native()
Примечание

не указано SLS как член AnyRef

final def notifyAll(): Unit

Разбуживает все нити, ожидающие монитора объекта получателя.

Определяющие классы
AnyRef
Аннотации
@native()
Примечание

не указано SLS как член AnyRef

final def synchronized[T0](arg0: ⇒ T0): T0

Определяющие классы
AnyRef

def toParArray: ParArray[T]

Неявный
Этот член добавлен в результате неявного преобразования из GenericTraversableTemplate[A, CC] в CollectionsHaveToParArray[GenericTraversableTemplate[A, CC], T] с помощью метода CollectionsHaveToParArray в scala.collection.parallel. Это преобразование произойдёт только если неявное значение типа (GenericTraversableTemplate[A, CC]) ⇒ GenTraversableOnce[T] находится в области видимости.
Классы определений
CollectionsHaveToParArray

def toString(): String

Создаёт строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, "@", и хэш-кода объекта в шестнадцатеричном формате.

возвращает

строковое представление объекта.

Классы определений
AnyRef → Any

def transpose[B](неявный asTraversable: (A) ⇒ GenTraversableOnce[B]): CC[CC[B]]

Транспонирует это множество коллекций в коллекцию коллекций.

Тип результирующей коллекции будет определяться статическим типом коллекции. Например:

val xs = List(
           Set(1, 2, 3),
           Set(4, 5, 6)).transpose
// xs == List(
//         List(1, 4),
//         List(2, 5),
//         List(3, 6))

val ys = Vector(
           List(1, 2, 3),
           List(4, 5, 6)).transpose
// ys == Vector(
//         Vector(1, 4),
//         Vector(2, 5),
//         Vector(3, 6))
B

тип элементов каждой коллекции.

asTraversable

неявное преобразование, которое утверждает, что тип элемента этой коллекции является Traversable.

возвращает

двумерная коллекция коллекций, в которой n-я строка соответствует n-му столбцу этой коллекции.

Аннотации
@migration
Миграция

(Изменено в версии 2.9.0) transpose выбрасывает IllegalArgumentException если коллекции не имеют одинаковый размер.

Исключения

IllegalArgumentException, если все коллекции в этой коллекции не имеют одинаковый размер.

def unzip[A1, A2](неявный asPair: (A) ⇒ (A1, A2)): (CC[A1], CC[A2])

Преобразует это множество пар в два множества первой и второй половины каждой пары.

val xs = Traversable(
           (1, "one"),
           (2, "two"),
           (3, "three")).unzip
// xs == (Traversable(1, 2, 3),
//        Traversable(one, two, three))
A1

тип первой половины пар элементов

A2

тип второй половины пар элементов

asPair

неявное преобразование, которое утверждает, что тип элемента этой коллекции — пара.

возвращает

пара коллекций, содержащая первую, соответственно вторую половину каждой пары элементов этой коллекции.

def unzip3[A1, A2, A3](неявный asTriple: (A) ⇒ (A1, A2, A3)): (CC[A1], CC[A2], CC[A3])

Преобразует это множество троек в три множества первого, второго и третьего элемента каждой тройки.

val xs = Traversable(
           (1, "one", '1'),
           (2, "two", '2'),
           (3, "three", '3')).unzip3
// xs == (Traversable(1, 2, 3),
//        Traversable(one, two, three),
//        Traversable(1, 2, 3))
A1

тип первого члена троек элементов

A2

тип второго члена троек элементов

A3

тип третьего члена троек элементов

asTriple

неявное преобразование, которое утверждает, что тип элемента этой коллекции — тройка.

возвращает

тройка коллекций, содержащая первый, второй, соответственно третий член каждой тройки элементов этой коллекции.

final def wait(): Unit

Классы определений
AnyRef
Аннотации
@throws( ... )

final def wait(arg0: Long, arg1: Int): Unit

Классы определений
AnyRef
Аннотации
@throws( ... )

final def wait(arg0: Long): Unit

Классы определений
AnyRef
Аннотации
@throws( ... ) @native()

def →[B](y: B): (GenericTraversableTemplate[A, CC], B)

Implicit
Этот член добавлен неявным преобразованием из GenericTraversableTemplate[A, CC] в ArrowAssoc[GenericTraversableTemplate[A, CC]] с помощью метода ArrowAssoc в scala.Predef.
Definition Classes
ArrowAssoc

© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/generic/GenericTraversableTemplate.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API