Spec-Zone.ru › Scala 3.1

Класс scala.*:

Объект-компаньон • Исходный код

@showAsInfix
sealed abstract class *:[+H, +T <: Кортеж] extends НепустойКортеж

Суперайтейпы
Трейт НепустойКортеж
Трейт Кортеж
Трейт Продукт
Трейт Equals
Класс Object
Трейт Matchable
Класс Any

Наследованные методы

Исходный код
inline def *:[H, This >: H *: T <: Кортеж](x: H): H *: This

Возвращает новый кортеж, добавив элемент в начало this кортежа. Эта операция имеет сложность O(this.size)

Наследованно от Кортеж

Исходный код
inline def ++[This >: H *: T <: Кортеж](that: Кортеж): Concat[This, that.type]

Возвращает новый кортеж, полученный конкатенацией this кортежа с that кортежем. Эта операция имеет сложность O(this.size + that.size)

Наследованно от Кортеж

Исходный код@experimental
inline def :*[This >: H *: T <: Кортеж, L](x: L): Append[This, L]

Возвращает копию this кортежа с добавленным элементом

Наследованно от Кортеж

Исходный код
inline def apply[This >: H *: T <: НепустойКортеж](n: Int): Elem[This, n.type]

Получение i-го элемента этого кортежа. Эквивалентно productElement, но с точным типом возвращаемого значения.

Наследованно от НепустойКортеж

Исходный код
def canEqual(that: Any): Boolean

Метод, который следует вызывать из хорошо спроектированного метода equals, который может быть переопределён в подклассе. См. Programming in Scala, Глава 28 для обсуждения и проектирования.

Параметры
that

значение, проверяемое на возможность равенства

Возвращает

true, если этот экземпляр может быть равен that, в противном случае false

Наследованно от Equals

Исходный код
inline def drop[This >: H *: T <: Кортеж](n: Int): Drop[This, n.type]

Для кортежа (a1, ..., am), возвращает кортеж (an+1, ..., am), содержащий все его элементы, кроме первых n.

Наследованно от Кортеж

Исходный код
inline def head[This >: H *: T <: НепустойКортеж]: Head[This]

Получение головы этого кортежа

Наследованно от НепустойКортеж

Исходный код@experimental
inline def init[This >: H *: T <: НепустойКортеж]: Init[This]

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

Наследованно от НепустойКортеж

Исходный код@experimental
inline def last[This >: H *: T <: НепустойКортеж]: Last[This]

Получение последнего элемента этого кортежа

Наследованно от НепустойКортеж

Исходный код
inline def map[F[_]](f: [t] => (x$1: t) => F[t]): Map[H *: T, F]

Применяется к кортежу (a1, ..., an), возвращает новый кортеж (f(a1), ..., f(an)). Результат типизируется как (F[A1], ..., F[An]) если тип кортежа полностью известен. Если кортеж имеет вид a1 *: ... *: Tuple, (то есть хвост не известен как конс-тип.

Наследованно от Кортеж

Исходный код
def productArity: Int

Размер этого продукта.

Возвращает

для продукта A(x1, ..., xk), возвращает k

Наследованно от Продукт

Исходный код
def productElement(n: Int): Any

n-ый элемент этого продукта, нумерация с 0. Другими словами, для продукта A(x1, ..., xk), возвращает x(n+1), где 0 <= n < k.

Параметры
n

индекс элемента для возврата

Возвращает

элемент n элементов после первого элемента

Исключения
IndexOutOfBoundsException

если n выходит за пределы диапазона(n < 0 || n >= productArity).

Наследованно от Продукт

Исходный код
def productElementName(n: Int): String

Имя n-го элемента этого продукта, нумерация с 0. В реализации по умолчанию, пустая строка.

Параметры
n

индекс имени элемента для возврата

Возвращает

имя указанного элемента

Исключения
IndexOutOfBoundsException

если n выходит за пределы диапазона(n < 0 || n >= productArity).

Наследованно от Продукт

Исходный код
def productElementNames: Iterator[String]

Итератор по именам всех элементов этого продукта.

Наследованно от Продукт

Исходный код
def productIterator: Iterator[Any]

Итератор по всем элементам этого продукта.

Возвращает

в реализации по умолчанию, Iterator[Any]

Наследованно от Продукт

Исходный код
def productPrefix: String

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

Возвращает

в реализации по умолчанию, пустая строка

Наследованно от Продукт

Источник
inline def size[This >: H *: T <: Tuple]: Size[This]

Возвращает размер (или арность) кортежа

Унаследовано от Tuple

Источник
inline def splitAt[This >: H *: T <: Tuple](n: Int): (This, n.type)

Учитывая кортеж (a1, ..., am), возвращает пару кортежей (a1, ..., an) , содержащих первые n элементов, и кортеж (an+1, ..., am) , содержащий оставшиеся элементы.

Унаследовано от Tuple

Источник
inline def tail[This >: H *: T <: NonEmptyTuple]: Tail[This]

Получить хвост этого кортежа. Эта операция имеет сложность O(this.size)

Унаследовано от NonEmptyTuple

Источник
inline def take[This >: H *: T <: Tuple](n: Int): Take[This, n.type]

Учитывая кортеж (a1, ..., am), возвращает кортеж (a1, ..., an) , содержащий первые n элементов.

Унаследовано от Tuple

Источник
inline def toArray: Array[Object]

Создать копию этого кортежа в виде массива

Унаследовано от Tuple

Источник
inline def toIArray: IArray[Object]

Создать копию этого кортежа в виде IArray

Унаследовано от Tuple

Источник
inline def toList: List[Union[H *: T]]

Создать копию этого кортежа в виде списка

Унаследовано от Tuple

Источник
inline def zip[This >: H *: T <: Tuple, T2 <: Tuple](t2: T2): Zip[This, T2]

Учитывая два кортежа, (a1, ..., an) и (a1, ..., an), возвращает кортеж ((a1, b1), ..., (an, bn)). Если у двух кортежей разный размер, лишние элементы большего кортежа будут проигнорированы. Результат типизируется как ((A1, B1), ..., (An, Bn)) , если у типов кортежей есть хвост EmptyTuple. В противном случае тип результата (A1, B1) *: ... *: (Ai, Bi) *: Tuple

Унаследовано от Tuple

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/*:.html

Spec-Zone.ru

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