Spec-Zone.ru › Scala 3.1

Объект scala.jdk.Accumulator

Класс-компаньон • Исходный код

объект Accumulator

Содержит фабричные методы для создания Accumulator.

Обратите внимание, что сам объект Accumulator не является фабрикой, но неявно преобразуется в фабрику в соответствии с типом элемента, см. Accumulator.toFactory.

Это позволяет передавать объект Accumulator в качестве аргумента при использовании collection.Factory, и неявно используемый экземпляр Accumulator.AccumulatorFactoryShape для построения специализированного Accumulator в соответствии с типом элемента:

scala> val intAcc = Accumulator(1,2,3)
intAcc: scala.collection.convert.IntAccumulator = IntAccumulator(1, 2, 3)

scala> val anyAccc = Accumulator("K")
anyAccc: scala.collection.convert.AnyAccumulator[String] = AnyAccumulator(K)

scala> val intAcc2 = List(1,2,3).to(Accumulator)
intAcc2: scala.jdk.IntAccumulator = IntAccumulator(1, 2, 3)

scala> val anyAcc2 = List("K").to(Accumulator)
anyAcc2: scala.jdk.AnyAccumulator[String] = AnyAccumulator(K)
Суперобъекты
класс Object
тракт Matchable
класс Any
Тип «self»
Accumulator.type

Классы

Исходный код
объект AccumulatorFactoryShape расширяет LowPriorityAccumulatorFactoryShape

Компаньон класс

Исходный код
запечатанный тракт AccumulatorFactoryShape[A, C]

Неявный AccumulatorFactoryShape используется в фабричном методе Accumulator для возврата специализированных вариантов в зависимости от типа элемента.

Компаньон объект

Исходный код
запечатанный тракт LowPriorityAccumulatorFactoryShape

Конкретные методы

Исходный код
def apply[A, C](elems: A*)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт Accumulator со заданными элементами.

Параметры типа
A

тип элементов Accumulator

C

специализированный (выведенный) тип Accumulator

Параметры значения
elems

элементы создаваемого Accumulator

Возвращает

новый Accumulator с элементами elems

Исходный код
def concat[A, C](xss: Iterable[A]*)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Объединяет все аргументные коллекции в один Accumulator.

Параметры значения
xss

коллекции, которые должны быть объединены.

Возвращает

объединение всех коллекций.

Источник
def empty[A, C](implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Пустая коллекция

Параметры типа
A

тип элементов Аккумулятора

Источник
def fill[A, C](n: Int)(elem: => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создает Аккумулятор, содержащий результаты вычисления элемента несколько раз.

Параметры значения
elem

вычисление элемента

n

количество элементов, содержащихся в Аккумуляторе.

Возвращает

Аккумулятор, содержащий результаты n вычислений elem.

Источник
def fill[A, C](n1: Int, n2: Int)(elem: => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[C]

Создает двумерный Аккумулятор, содержащий результаты вычисления элемента несколько раз.

Параметры значения
elem

вычисление элемента

n1

количество элементов в 1-м измерении

n2

количество элементов во 2-м измерении

Возвращает

Аккумулятор, содержащий результаты n1 x n2 вычислений elem.

Источник
def fill[A, C](n1: Int, n2: Int, n3: Int)(elem: => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[C]]

Создаёт трёхмерный Аккумулятор, содержащий результаты вычисления элемента несколько раз.

Параметры значения
elem

вычисление элемента

n1

количество элементов в 1-м измерении

n2

количество элементов во 2-м измерении

n3

количество элементов в 3-м измерении

Возвращает

Аккумулятор, содержащий результаты n1 x n2 x n3 вычислений elem.

Источник
def fill[A, C](n1: Int, n2: Int, n3: Int, n4: Int)(elem: => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[AnyAccumulator[C]]]

Создаёт четырёхмерный Аккумулятор, содержащий результаты вычисления элемента несколько раз.

Параметры значения
elem

вычисление элемента

n1

количество элементов в 1-м измерении

n2

количество элементов во 2-м измерении

n3

количество элементов в 3-м измерении

n4

количество элементов в 4-м измерении

Возвращает

Аккумулятор, содержащий результаты n1 x n2 x n3 x n4 вычислений elem.

Источник
def fill[A, C](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(elem: => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[AnyAccumulator[AnyAccumulator[C]]]]

Создаёт пятимерный Аккумулятор, содержащий результаты вычисления элемента несколько раз.

Параметры значения
elem

вычисление элемента

n1

количество элементов в 1-м измерении

n2

количество элементов во 2-м измерении

n3

количество элементов в 3-м измерении

n4

количество элементов в 4-м измерении

n5

количество элементов в 5-м измерении

Возвращает

Аккумулятор, содержащий результаты n1 x n2 x n3 x n4 x n5 вычислений elem.

Источник
def from[A, C](source: IterableOnce[A])(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт целевой Аккумулятор из существующей исходной коллекции

Type parameters
A

тип элементов Аккумулятора

C

конкретный (выведенный) тип Аккумулятора

Value parameters
source

Исходное множество

Returns

новый Аккумулятор со значениями source

Source
def iterate[A, C](start: A, len: Int)(f: A => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт Аккумулятор, содержащий повторяемые применения функции к начальному значению.

Value parameters
f

функция, которая многократно применяется

len

количество элементов в Аккумуляторе

start

начальное значение Аккумулятора

Returns

Аккумулятор со значениями len в последовательности start, f(start), f(f(start)), ...

Source
def newBuilder[A, C](implicit canAccumulate: AccumulatorFactoryShape[A, C]): Builder[A, C]

Type parameters
A

тип элементов Аккумулятора

C

конкретный тип Аккумулятора

Returns

Строитель для объектов Accumulator.

Source
def range[A : Integral, C](start: A, end: A)(implicit evidence$1: Integral[A], canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт Аккумулятор, содержащий последовательность возрастающих целых чисел.

Value parameters
end

конечное значение Аккумулятора (первое значение, НЕ содержащееся)

start

первый элемент Аккумулятора

Returns

Аккумулятор со значениями start, start + 1, ..., end - 1

Source
def range[A : Integral, C](start: A, end: A, step: A)(implicit evidence$2: Integral[A], canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт Аккумулятор, содержащий равномерно распределённые значения в некотором целочисленном интервале.

Value parameters
end

конечное значение Аккумулятора (первое значение, НЕ содержащееся)

start

начальное значение Аккумулятора

step

разность между последовательными элементами Аккумулятора (должна быть положительной или отрицательной)

Returns

Аккумулятор со значениями start, start + step, ... до, но не включая end

Source
def tabulate[A, C](n: Int)(f: Int => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт Аккумулятор, содержащий значения заданной функции для диапазона целочисленных значений, начиная с 0.

Value parameters
f

Функция, вычисляющая значения элементов

n

Количество элементов в Аккумуляторе

Returns

Аккумулятор, состоящий из элементов f(0), ..., f(n -1)

Source
def tabulate[A, C](n1: Int, n2: Int)(f: (Int, Int) => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[C]

Создаёт двумерный накопитель (Accumulator), содержащий значения заданной функции на диапазонах целочисленных значений, начиная с 0.

Параметры
f

Функция, вычисляющая значения элементов

n1

количество элементов в первом измерении

n2

количество элементов во втором измерении

Возвращает

Накопитель, состоящий из элементов f(i1, i2) для 0 <= i1 < n1 и 0 <= i2 < n2.

Source
def tabulate[A, C](n1: Int, n2: Int, n3: Int)(f: (Int, Int, Int) => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[C]]

Создаёт трёхмерный накопитель (Accumulator), содержащий значения заданной функции на диапазонах целочисленных значений, начиная с 0.

Параметры
f

Функция, вычисляющая значения элементов

n1

количество элементов в первом измерении

n2

количество элементов во втором измерении

n3

количество элементов в третьем измерении

Возвращает

Накопитель, состоящий из элементов f(i1, i2, i3) для 0 <= i1 < n1, 0 <= i2 < n2, и 0 <= i3 < n3.

Source
def tabulate[A, C](n1: Int, n2: Int, n3: Int, n4: Int)(f: (Int, Int, Int, Int) => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[AnyAccumulator[C]]]

Создаёт четырёхмерный накопитель (Accumulator), содержащий значения заданной функции на диапазонах целочисленных значений, начиная с 0.

Параметры
f

Функция, вычисляющая значения элементов

n1

количество элементов в первом измерении

n2

количество элементов во втором измерении

n3

количество элементов в третьем измерении

n4

количество элементов в четвёртом измерении

Возвращает

Накопитель, состоящий из элементов f(i1, i2, i3, i4) для 0 <= i1 < n1, 0 <= i2 < n2, 0 <= i3 < n3, и 0 <= i4 < n4.

Source
def tabulate[A, C](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(f: (Int, Int, Int, Int, Int) => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[AnyAccumulator[AnyAccumulator[C]]]]

Создаёт пятимерный накопитель (Accumulator), содержащий значения заданной функции на диапазонах целочисленных значений, начиная с 0.

Параметры
f

Функция, вычисляющая значения элементов

n1

количество элементов в первом измерении

n2

количество элементов во втором измерении

n3

количество элементов в третьем измерении

n4

количество элементов в четвёртом измерении

n5

количество элементов в пятом измерении

Возвращает

Накопитель, состоящий из элементов f(i1, i2, i3, i4, i5) для 0 <= i1 < n1, 0 <= i2 < n2, 0 <= i3 < n3, 0 <= i4 < n4, и 0 <= i5 < n5.

Source
def unfold[A, S, C](init: S)(f: S => Option[(A, S)])(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт накопитель (Accumulator), использующий функцию f для создания элементов типа A и обновления внутреннего состояния типа S.

Тип параметров
A

Тип элементов

C

Тип (обычно выводимый) аккумулятора

S

Тип внутреннего состояния

Параметры значения
f

Вычисляет следующий элемент (или возвращает None для сигнализации об окончании коллекции)

init

Начальное значение состояния

Возвращаемое значение

Аккумулятор, который производит элементы с использованием f до тех пор, пока f не вернёт None

Неявные функции

Источник
implicit def toFactory[A, C](sa: Accumulator.type)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): Factory[A, C]

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

Spec-Zone.ru

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