AtomicArray

abstract class AtomicArray[T] extends IndexedSeq[T] with IndexedSeqOps[T, [T] =>> AtomicArray[T], AtomicArray[T]] with IterableFactoryDefaults[T, [T] =>> AtomicArray[T]]

AtomicArray implements a fixed-length indexed sequence where reads and writes have volatile semantics. In addition, it adds an atomic swap operation (swap) and an atomic compare-and-swap (compareAndSet). The collection is backed by one of the Java atomic array classes, with the best match chosen at construction time using a manifest.

AtomicArray implements a fixed-length indexed sequence where reads and writes have volatile semantics. In addition, it adds an atomic swap operation (swap) and an atomic compare-and-swap (compareAndSet). The collection is backed by one of the Java atomic array classes, with the best match chosen at construction time using a manifest.

Instances of AtomicArray[T] are backed by AtomicIntegerArray if T is a primitive of at most 32 bits (smaller values are padded rather than packed). AtomicArray[Long] and AtomicArray[Double] are backed by AtomicLongArray. All other instances of AtomicArray[T] are backed by AtomicReferenceArray (except for AtomicArray[Unit]). Floats and doubles are stored using their raw bit representation.

This class is used in the implementation of the reference STM implementation, but it is standalone and may be generally useful.

Authors

Nathan Bronson

Companion
object
trait IndexedSeq[T]
trait IndexedSeqOps[T, [T] =>> AtomicArray[T], AtomicArray[T]]
trait IndexedSeq[T]
trait IndexedSeqOps[T, [T] =>> AtomicArray[T], AtomicArray[T]]
trait Seq[T]
trait SeqOps[T, [T] =>> AtomicArray[T], AtomicArray[T]]
trait Cloneable[AtomicArray[T]]
trait Cloneable
trait Seq[T]
trait Equals
trait SeqOps[T, [T] =>> AtomicArray[T], AtomicArray[T]]
trait PartialFunction[Int, T]
trait Int => T
trait Iterable[T]
trait Iterable[T]
trait IterableFactoryDefaults[T, [T] =>> AtomicArray[T]]
trait IterableOps[T, [T] =>> AtomicArray[T], AtomicArray[T]]
trait IterableOnceOps[T, [T] =>> AtomicArray[T], AtomicArray[T]]
trait IterableOnce[T]
class Object
trait Matchable
class Any
class ofBoolean
class ofByte
class ofShort
class ofChar
class ofInt
class ofFloat
class ofLong
class ofDouble
class ofUnit
class ofRef[T]

Value members

Abstract methods

def apply(index: Int): T

The element at given index, with volatile read semantics

The element at given index, with volatile read semantics

def compareAndSet(index: Int, expected: T, elem: T): Boolean

Returns true iff previous value was expected, elem installed

Returns true iff previous value was expected, elem installed

def length: Int

The length of the array

The length of the array

def swap(index: Int, elem: T): T

Atomic swap of the element at index

Atomic swap of the element at index

def update(index: Int, elem: T): Unit

Update element at given index, with volatile write semantics

Update element at given index, with volatile write semantics

Concrete methods

override def className: String
Definition Classes
Iterable
override def clone: AtomicArray[T]

Clones this object, including the underlying Array.

Clones this object, including the underlying Array.

Definition Classes
SeqOps -> Cloneable -> Object
@tailrec
final def getAndTransform(index: Int)(f: T => T): T

Retries compareAndSet until success, using f, then returns the old value

Retries compareAndSet until success, using f, then returns the old value

Inherited methods

@inline
final def ++[B >: T](suffix: IterableOnce[B]): AtomicArray[B]
Inherited from
IterableOps
@inline
final override def ++:[B >: T](prefix: IterableOnce[B]): AtomicArray[B]
Definition Classes
SeqOps -> IterableOps
Inherited from
SeqOps
@inline
final def +:[B >: T](elem: B): AtomicArray[B]
Inherited from
SeqOps
@inline
final def :+[B >: T](elem: B): AtomicArray[B]
Inherited from
SeqOps
@inline
final def :++[B >: T](suffix: IterableOnce[B]): AtomicArray[B]
Inherited from
SeqOps
def `scala$collection$SeqOps$$super$concat`[B >: T](suffix: IterableOnce[B]): AtomicArray[B]
Inherited from
SeqOps
Inherited from
SeqOps
Inherited from
SeqOps
Inherited from
Cloneable
@inline
final def addString(b: StringBuilder): StringBuilder
Inherited from
IterableOnceOps
@inline
final def addString(b: StringBuilder, sep: String): StringBuilder
Inherited from
IterableOnceOps
def addString(b: StringBuilder, start: String, sep: String, end: String): StringBuilder
Inherited from
IterableOnceOps
def andThen[C](k: PartialFunction[T, C]): PartialFunction[Int, C]
Inherited from
PartialFunction
override def andThen[C](k: T => C): PartialFunction[Int, C]
Definition Classes
PartialFunction -> Function1
Inherited from
PartialFunction
def appended[B >: T](elem: B): AtomicArray[B]
Inherited from
SeqOps
def appendedAll[B >: T](suffix: IterableOnce[B]): AtomicArray[B]
Inherited from
SeqOps
def applyOrElse[A1 <: Int, B1 >: T](x: A1, default: A1 => B1): B1
Inherited from
PartialFunction
def canEqual(that: Any): Boolean
Inherited from
Seq
def collect[B](pf: PartialFunction[T, B]): AtomicArray[B]
Inherited from
IterableOps
def collectFirst[B](pf: PartialFunction[T, B]): Option[B]
Inherited from
IterableOnceOps
def combinations(n: Int): Iterator[AtomicArray[T]]
Inherited from
SeqOps
def compose[R](k: PartialFunction[R, Int]): PartialFunction[R, T]
Inherited from
PartialFunction
@unspecialized
def compose[A](g: A => Int): A => T
Inherited from
Function1
@inline
final override def concat[B >: T](suffix: IterableOnce[B]): AtomicArray[B]
Definition Classes
SeqOps -> IterableOps
Inherited from
SeqOps
def contains[A1 >: T](elem: A1): Boolean
Inherited from
SeqOps
def containsSlice[B >: T](that: Seq[B]): Boolean
Inherited from
SeqOps
def copyToArray[B >: T](xs: Array[B], start: Int, len: Int): Int
Inherited from
IterableOnceOps
@deprecatedOverriding("This should always forward to the 3-arg version of this method", "2.13.4")
def copyToArray[B >: T](xs: Array[B], start: Int): Int
Inherited from
IterableOnceOps
@deprecatedOverriding("This should always forward to the 3-arg version of this method", "2.13.4")
def copyToArray[B >: T](xs: Array[B]): Int
Inherited from
IterableOnceOps
def corresponds[B](that: IterableOnce[B])(p: (T, B) => Boolean): Boolean
Inherited from
IterableOnceOps
def corresponds[B](that: Seq[B])(p: (T, B) => Boolean): Boolean
Inherited from
SeqOps
def count(p: T => Boolean): Int
Inherited from
IterableOnceOps
def diff[B >: T](that: Seq[B]): AtomicArray[T]
Inherited from
SeqOps
Inherited from
SeqOps
def distinctBy[B](f: T => B): AtomicArray[T]
Inherited from
SeqOps
override def drop(n: Int): AtomicArray[T]
Definition Classes
IndexedSeqOps -> IterableOps -> IterableOnceOps
Inherited from
IndexedSeqOps
override def dropRight(n: Int): AtomicArray[T]
Definition Classes
IndexedSeqOps -> IterableOps
Inherited from
IndexedSeqOps
def dropWhile(p: T => Boolean): AtomicArray[T]
Inherited from
IterableOps
def elementWise: ElementWiseExtractor[Int, T]
Inherited from
PartialFunction
override def empty: AtomicArray[T]
Definition Classes
IterableFactoryDefaults -> IterableOps
Inherited from
IterableFactoryDefaults
def endsWith[B >: T](that: Iterable[B]): Boolean
Inherited from
SeqOps
override def equals(o: Any): Boolean
Definition Classes
Seq -> Equals -> Any
Inherited from
Seq
def exists(p: T => Boolean): Boolean
Inherited from
IterableOnceOps
def filter(pred: T => Boolean): AtomicArray[T]
Inherited from
IterableOps
def filterNot(pred: T => Boolean): AtomicArray[T]
Inherited from
IterableOps
def find(p: T => Boolean): Option[T]
Inherited from
IterableOnceOps
def findLast(p: T => Boolean): Option[T]
Inherited from
SeqOps
def flatMap[B](f: T => IterableOnce[B]): AtomicArray[B]
Inherited from
IterableOps
def flatten[B](asIterable: T => IterableOnce[B]): AtomicArray[B]
Inherited from
IterableOps
def fold[A1 >: T](z: A1)(op: (A1, A1) => A1): A1
Inherited from
IterableOnceOps
def foldLeft[B](z: B)(op: (B, T) => B): B
Inherited from
IterableOnceOps
override def foldRight[B](z: B)(op: (T, B) => B): B
Definition Classes
IndexedSeqOps -> IterableOnceOps
Inherited from
IndexedSeqOps
def forall(p: T => Boolean): Boolean
Inherited from
IterableOnceOps
def foreach[U](f: T => U): Unit
Inherited from
IterableOnceOps
protected def fromSpecific(coll: IterableOnce[T]): AtomicArray[T]
Inherited from
IterableFactoryDefaults
def groupBy[K](f: T => K): Map[K, AtomicArray[T]]
Inherited from
IterableOps
def groupMap[K, B](key: T => K)(f: T => B): Map[K, AtomicArray[B]]
Inherited from
IterableOps
def groupMapReduce[K, B](key: T => K)(f: T => B)(reduce: (B, B) => B): Map[K, B]
Inherited from
IterableOps
def grouped(size: Int): Iterator[AtomicArray[T]]
Inherited from
IterableOps
override def hashCode(): Int
Definition Classes
Seq -> Any
Inherited from
Seq
override def head: T
Definition Classes
IndexedSeqOps -> IterableOps
Inherited from
IndexedSeqOps
override def headOption: Option[T]
Definition Classes
IndexedSeqOps -> IterableOps
Inherited from
IndexedSeqOps
@deprecatedOverriding("Override indexOf(elem, from) instead - indexOf(elem) calls indexOf(elem, 0)", "2.13.0")
def indexOf[B >: T](elem: B): Int
Inherited from
SeqOps
def indexOf[B >: T](elem: B, from: Int): Int
Inherited from
SeqOps
@deprecatedOverriding("Override indexOfSlice(that, from) instead - indexOfSlice(that) calls indexOfSlice(that, 0)", "2.13.0")
def indexOfSlice[B >: T](that: Seq[B]): Int
Inherited from
SeqOps
def indexOfSlice[B >: T](that: Seq[B], from: Int): Int
Inherited from
SeqOps
@deprecatedOverriding("Override indexWhere(p, from) instead - indexWhere(p) calls indexWhere(p, 0)", "2.13.0")
def indexWhere(p: T => Boolean): Int
Inherited from
SeqOps
def indexWhere(p: T => Boolean, from: Int): Int
Inherited from
SeqOps
def indices: Range
Inherited from
SeqOps
def init: AtomicArray[T]
Inherited from
IterableOps
def inits: Iterator[AtomicArray[T]]
Inherited from
IterableOps
def intersect[B >: T](that: Seq[B]): AtomicArray[T]
Inherited from
SeqOps
def isDefinedAt(idx: Int): Boolean
Inherited from
SeqOps
override def isEmpty: Boolean
Definition Classes
SeqOps -> IterableOnceOps
Inherited from
SeqOps
override def isTraversableAgain: Boolean
Definition Classes
IterableOps -> IterableOnceOps
Inherited from
IterableOps
def iterator: Iterator[T]
Inherited from
IndexedSeqOps
override def knownSize: Int
Definition Classes
IndexedSeqOps -> IterableOnce
Inherited from
IndexedSeqOps
override def last: T
Definition Classes
IndexedSeqOps -> IterableOps
Inherited from
IndexedSeqOps
def lastIndexOf[B >: T](elem: B, end: Int): Int
Inherited from
SeqOps
@deprecatedOverriding("Override lastIndexOfSlice(that, end) instead - lastIndexOfSlice(that) calls lastIndexOfSlice(that, Int.MaxValue)", "2.13.0")
def lastIndexOfSlice[B >: T](that: Seq[B]): Int
Inherited from
SeqOps
def lastIndexOfSlice[B >: T](that: Seq[B], end: Int): Int
Inherited from
SeqOps
@deprecatedOverriding("Override lastIndexWhere(p, end) instead - lastIndexWhere(p) calls lastIndexWhere(p, Int.MaxValue)", "2.13.0")
def lastIndexWhere(p: T => Boolean): Int
Inherited from
SeqOps
def lastIndexWhere(p: T => Boolean, end: Int): Int
Inherited from
SeqOps
def lastOption: Option[T]
Inherited from
IterableOps
def lazyZip[B](that: Iterable[B]): LazyZip2[T, B, AtomicArray[T]]
Inherited from
Iterable
final override def lengthCompare(that: Iterable[_]): Int
Definition Classes
IndexedSeqOps -> SeqOps
Inherited from
IndexedSeqOps
final override def lengthCompare(len: Int): Int
Definition Classes
IndexedSeqOps -> SeqOps
Inherited from
IndexedSeqOps
@inline
final def lengthIs: SizeCompareOps
Inherited from
SeqOps
def lift: Int => Option[T]
Inherited from
PartialFunction
override def map[B](f: T => B): AtomicArray[B]
Definition Classes
IndexedSeqOps -> IterableOps -> IterableOnceOps
Inherited from
IndexedSeqOps
def mapInPlace(f: T => T): AtomicArray[T]
Inherited from
IndexedSeqOps
def max[B >: T](ord: Ordering[B]): T
Inherited from
IterableOnceOps
def maxBy[B](f: T => B)(cmp: Ordering[B]): T
Inherited from
IterableOnceOps
def maxByOption[B](f: T => B)(cmp: Ordering[B]): Option[T]
Inherited from
IterableOnceOps
def maxOption[B >: T](ord: Ordering[B]): Option[T]
Inherited from
IterableOnceOps
def min[B >: T](ord: Ordering[B]): T
Inherited from
IterableOnceOps
def minBy[B](f: T => B)(cmp: Ordering[B]): T
Inherited from
IterableOnceOps
def minByOption[B](f: T => B)(cmp: Ordering[B]): Option[T]
Inherited from
IterableOnceOps
def minOption[B >: T](ord: Ordering[B]): Option[T]
Inherited from
IterableOnceOps
@inline
final def mkString: String
Inherited from
IterableOnceOps
@inline
final def mkString(sep: String): String
Inherited from
IterableOnceOps
final def mkString(start: String, sep: String, end: String): String
Inherited from
IterableOnceOps
protected def newSpecificBuilder: Builder[T, AtomicArray[T]]
Inherited from
IterableFactoryDefaults
@deprecatedOverriding("nonEmpty is defined as !isEmpty; override isEmpty instead", "2.13.0")
def nonEmpty: Boolean
Inherited from
IterableOnceOps
def orElse[A1 <: Int, B1 >: T](that: PartialFunction[A1, B1]): PartialFunction[A1, B1]
Inherited from
PartialFunction
def padTo[B >: T](len: Int, elem: B): AtomicArray[B]
Inherited from
SeqOps
def partition(p: T => Boolean): (AtomicArray[T], AtomicArray[T])
Inherited from
IterableOps
def partitionMap[A1, A2](f: T => Either[A1, A2]): (AtomicArray[A1], AtomicArray[A2])
Inherited from
IterableOps
def patch[B >: T](from: Int, other: IterableOnce[B], replaced: Int): AtomicArray[B]
Inherited from
SeqOps
def permutations: Iterator[AtomicArray[T]]
Inherited from
SeqOps
override def prepended[B >: T](elem: B): AtomicArray[B]
Definition Classes
IndexedSeqOps -> SeqOps
Inherited from
IndexedSeqOps
def prependedAll[B >: T](prefix: IterableOnce[B]): AtomicArray[B]
Inherited from
SeqOps
def product[B >: T](num: Numeric[B]): B
Inherited from
IterableOnceOps
def reduce[B >: T](op: (B, B) => B): B
Inherited from
IterableOnceOps
def reduceLeft[B >: T](op: (B, T) => B): B
Inherited from
IterableOnceOps
def reduceLeftOption[B >: T](op: (B, T) => B): Option[B]
Inherited from
IterableOnceOps
def reduceOption[B >: T](op: (B, B) => B): Option[B]
Inherited from
IterableOnceOps
def reduceRight[B >: T](op: (T, B) => B): B
Inherited from
IterableOnceOps
def reduceRightOption[B >: T](op: (T, B) => B): Option[B]
Inherited from
IterableOnceOps
override def reverse: AtomicArray[T]
Definition Classes
IndexedSeqOps -> SeqOps
Inherited from
IndexedSeqOps
override def reverseIterator: Iterator[T]
Definition Classes
IndexedSeqOps -> SeqOps
Inherited from
IndexedSeqOps
override protected def reversed: Iterable[T]
Definition Classes
IndexedSeqOps -> IterableOnceOps
Inherited from
IndexedSeqOps
def runWith[U](action: T => U): Int => Boolean
Inherited from
PartialFunction
def sameElements[B >: T](that: IterableOnce[B]): Boolean
Inherited from
SeqOps
def scan[B >: T](z: B)(op: (B, B) => B): AtomicArray[B]
Inherited from
IterableOps
def scanLeft[B](z: B)(op: (B, T) => B): AtomicArray[B]
Inherited from
IterableOps
def scanRight[B](z: B)(op: (T, B) => B): AtomicArray[B]
Inherited from
IterableOps
override def search[B >: T](elem: B, from: Int, to: Int)(ord: Ordering[B]): SearchResult
Definition Classes
IndexedSeqOps -> SeqOps
Inherited from
IndexedSeqOps
override def search[B >: T](elem: B)(ord: Ordering[B]): SearchResult
Definition Classes
IndexedSeqOps -> SeqOps
Inherited from
IndexedSeqOps
def segmentLength(p: T => Boolean, from: Int): Int
Inherited from
SeqOps
final def segmentLength(p: T => Boolean): Int
Inherited from
SeqOps
final override def size: Int
Definition Classes
SeqOps -> IterableOnceOps
Inherited from
SeqOps
final override def sizeCompare(that: Iterable[_]): Int
Definition Classes
SeqOps -> IterableOps
Inherited from
SeqOps
final override def sizeCompare(otherSize: Int): Int
Definition Classes
SeqOps -> IterableOps
Inherited from
SeqOps
@inline
final def sizeIs: SizeCompareOps
Inherited from
IterableOps
override def slice(from: Int, until: Int): AtomicArray[T]
Definition Classes
IndexedSeqOps -> IterableOps -> IterableOnceOps
Inherited from
IndexedSeqOps
def sliding(size: Int, step: Int): Iterator[AtomicArray[T]]
Inherited from
IterableOps
def sliding(size: Int): Iterator[AtomicArray[T]]
Inherited from
IterableOps
def sortBy[B](f: T => B)(ord: Ordering[B]): AtomicArray[T]
Inherited from
SeqOps
def sortInPlace[B >: T](ord: Ordering[B]): AtomicArray[T]
Inherited from
IndexedSeqOps
def sortInPlaceBy[B](f: T => B)(ord: Ordering[B]): AtomicArray[T]
Inherited from
IndexedSeqOps
def sortInPlaceWith(lt: (T, T) => Boolean): AtomicArray[T]
Inherited from
IndexedSeqOps
def sortWith(lt: (T, T) => Boolean): AtomicArray[T]
Inherited from
SeqOps
def sorted[B >: T](ord: Ordering[B]): AtomicArray[T]
Inherited from
SeqOps
def span(p: T => Boolean): (AtomicArray[T], AtomicArray[T])
Inherited from
IterableOps
override def splitAt(n: Int): (AtomicArray[T], AtomicArray[T])
Definition Classes
IterableOps -> IterableOnceOps
Inherited from
IterableOps
def startsWith[B >: T](that: IterableOnce[B], offset: Int): Boolean
Inherited from
SeqOps
override def stepper[S <: Stepper[_]](shape: StepperShape[T, S]): S & EfficientSplit
Definition Classes
IndexedSeqOps -> IterableOnce
Inherited from
IndexedSeqOps
def sum[B >: T](num: Numeric[B]): B
Inherited from
IterableOnceOps
def tail: AtomicArray[T]
Inherited from
IterableOps
def tails: Iterator[AtomicArray[T]]
Inherited from
IterableOps
override def take(n: Int): AtomicArray[T]
Definition Classes
IndexedSeqOps -> IterableOps -> IterableOnceOps
Inherited from
IndexedSeqOps
override def takeRight(n: Int): AtomicArray[T]
Definition Classes
IndexedSeqOps -> IterableOps
Inherited from
IndexedSeqOps
def takeWhile(p: T => Boolean): AtomicArray[T]
Inherited from
IterableOps
override def tapEach[U](f: T => U): AtomicArray[T]
Definition Classes
IterableOps -> IterableOnceOps
Inherited from
IterableOps
def to[C1](factory: Factory[T, C1]): C1
Inherited from
IterableOnceOps
def toArray[B >: T](ClassTag[B]): Array[B]
Inherited from
IterableOnceOps
@inline
final def toBuffer[B >: T]: Buffer[B]
Inherited from
IterableOnceOps
def toIndexedSeq: IndexedSeq[T]
Inherited from
IterableOnceOps
final def toIterable: AtomicArray[T]
Inherited from
Iterable
def toList: List[T]
Inherited from
IterableOnceOps
def toMap[K, V](ev: T <:< (K, V)): Map[K, V]
Inherited from
IterableOnceOps
def toSeq: Seq[T]
Inherited from
IterableOnceOps
def toSet[B >: T]: Set[B]
Inherited from
IterableOnceOps
override def toString(): String
Definition Classes
Seq -> Function1 -> Iterable -> Any
Inherited from
Seq
def toVector: Vector[T]
Inherited from
IterableOnceOps
def transpose[B](asIterable: T => Iterable[B]): AtomicArray[AtomicArray[B]]
Inherited from
IterableOps
def unapply(a: Int): Option[T]
Inherited from
PartialFunction
def unzip[A1, A2](asPair: T => (A1, A2)): (AtomicArray[A1], AtomicArray[A2])
Inherited from
IterableOps
def unzip3[A1, A2, A3](asTriple: T => (A1, A2, A3)): (AtomicArray[A1], AtomicArray[A2], AtomicArray[A3])
Inherited from
IterableOps
def updated[B >: T](index: Int, elem: B): AtomicArray[B]
Inherited from
SeqOps
override def view: IndexedSeqView[T]
Definition Classes
IndexedSeqOps -> SeqOps -> IterableOps
Inherited from
IndexedSeqOps
def withFilter(p: T => Boolean): WithFilter[T, [T] =>> AtomicArray[T]]
Inherited from
IterableOps
def zip[B](that: IterableOnce[B]): AtomicArray[(T, B)]
Inherited from
IterableOps
def zipAll[A1 >: T, B](that: Iterable[B], thisElem: A1, thatElem: B): AtomicArray[(A1, B)]
Inherited from
IterableOps
def zipWithIndex: AtomicArray[(T, Int)]
Inherited from
IterableOps

Deprecated and Inherited methods

@inline @deprecated("Use foldLeft instead of /:", "2.13.0")
final def /:[B](z: B)(op: (B, T) => B): B
Deprecated
Inherited from
IterableOnceOps
@inline @deprecated("Use foldRight instead of :\\", "2.13.0")
final def :\[B](z: B)(op: (T, B) => B): B
Deprecated
Inherited from
IterableOnceOps
@deprecated("`aggregate` is not relevant for sequential collections. Use `foldLeft(z)(seqop)` instead.", "2.13.0")
def aggregate[B](z: => B)(seqop: (B, T) => B, combop: (B, B) => B): B
Deprecated
Inherited from
IterableOnceOps
@inline @deprecatedOverriding("Use iterableFactory instead", "2.13.0") @deprecated("Use iterableFactory instead", "2.13.0")
def companion: IterableFactory[[T] =>> AtomicArray[T]]
Deprecated
Inherited from
IterableOps
@inline @deprecated("Use `dest ++= coll` instead", "2.13.0")
final def copyToBuffer[B >: T](dest: Buffer[B]): Unit
Deprecated
Inherited from
IterableOnceOps
@deprecated("Check .knownSize instead of .hasDefiniteSize for more actionable information (see scaladoc for details)", "2.13.0")
def hasDefiniteSize: Boolean
Deprecated
Inherited from
IterableOnceOps
@inline @deprecated("Use segmentLength instead of prefixLength", "2.13.0")
final def prefixLength(p: T => Boolean): Int
Deprecated
Inherited from
SeqOps
@deprecated("Use coll instead of repr in a collection implementation, use the collection value itself from the outside", "2.13.0")
final def repr: AtomicArray[T]
Deprecated
Inherited from
IterableOps
@deprecated("Use .reverseIterator.map(f).to(...) instead of .reverseMap(f)", "2.13.0")
def reverseMap[B](f: T => B): AtomicArray[B]
Deprecated
Inherited from
SeqOps
@deprecated("Iterable.seq always returns the iterable itself", "2.13.0")
def seq: AtomicArray[T]
Deprecated
Inherited from
Iterable
@inline @deprecated("Use .iterator instead of .toIterator", "2.13.0")
final def toIterator: Iterator[T]
Deprecated
Inherited from
IterableOnceOps
@inline @deprecated("Use .to(LazyList) instead of .toStream", "2.13.0")
final def toStream: Stream[T]
Deprecated
Inherited from
IterableOnceOps
@deprecated("Use toIterable instead", "2.13.0")
final def toTraversable: Iterable[T]
Deprecated
Inherited from
IterableOps
@inline @deprecated("Use `mapInPlace` on an `IndexedSeq` instead", "2.13.0")
final def transform(f: T => T): AtomicArray[T]
Deprecated
Inherited from
SeqOps
@inline @deprecated("Use `concat` instead", "2.13.0")
final def union[B >: T](that: Seq[B]): AtomicArray[B]
Deprecated
Inherited from
SeqOps
@deprecated("Use .view.slice(from, until) instead of .view(from, until)", "2.13.0")
override def view(from: Int, until: Int): IndexedSeqView[T]
Deprecated
Definition Classes
IndexedSeqOps -> IterableOps
Inherited from
IndexedSeqOps

Concrete fields

override val iterableFactory: SeqFactory[[T] =>> AtomicArray[T]]