SnapshotStateList


An implementation of MutableList that can be observed and snapshot. This is the result type created by androidx.compose.runtime.mutableStateListOf.

This class closely implements the same semantics as ArrayList.

Summary

Public constructors

Cmn

Public functions

open Boolean
add(element: T)
Cmn
open Unit
add(index: Int, element: T)
Cmn
open Boolean
addAll(elements: Collection<T>)
Cmn
open Boolean
addAll(index: Int, elements: Collection<T>)
Cmn
open Unit
Cmn
open operator Boolean
contains(element: T)
Cmn
open Boolean
containsAll(elements: Collection<T>)
Cmn
open operator T
get(index: Int)
Cmn
open Int
indexOf(element: T)
Cmn
open Boolean
Cmn
open operator MutableIterator<T>
Cmn
open Int
lastIndexOf(element: T)
Cmn
open MutableListIterator<T>
Cmn
open MutableListIterator<T>
listIterator(index: Int)
Cmn
open Unit

Add a new state record to the beginning of a list.

Cmn
open Boolean
remove(element: T)
Cmn
open Boolean
removeAll(elements: Collection<T>)
Cmn
open T
removeAt(index: Int)
Cmn
Unit
removeRange(fromIndex: Int, toIndex: Int)
Cmn
open Boolean
retainAll(elements: Collection<T>)
Cmn
open operator T
set(index: Int, element: T)
Cmn
open MutableList<T>
subList(fromIndex: Int, toIndex: Int)
Cmn
List<T>

Return a list containing all the elements of this list.

Cmn
open String
Cmn

Public properties

open StateRecord

The first state record in a linked list of state records.

Cmn
open Int
Cmn

Inherited functions

From androidx.compose.runtime.snapshots.StateObject
open StateRecord?
mergeRecords(
    previous: StateRecord,
    current: StateRecord,
    applied: StateRecord
)

Produce a merged state based on the conflicting state changes.

Cmn

Public constructors

SnapshotStateList

<T : Any?> SnapshotStateList()

Public functions

add

open fun add(element: T): Boolean

add

open fun add(index: Int, element: T): Unit

addAll

open fun addAll(elements: Collection<T>): Boolean

addAll

open fun addAll(index: Int, elements: Collection<T>): Boolean

clear

open fun clear(): Unit

contains

open operator fun contains(element: T): Boolean

containsAll

open fun containsAll(elements: Collection<T>): Boolean

get

open operator fun get(index: Int): T

indexOf

open fun indexOf(element: T): Int

isEmpty

open fun isEmpty(): Boolean

iterator

open operator fun iterator(): MutableIterator<T>

lastIndexOf

open fun lastIndexOf(element: T): Int

listIterator

open fun listIterator(): MutableListIterator<T>

listIterator

open fun listIterator(index: Int): MutableListIterator<T>

prependStateRecord

open fun prependStateRecord(value: StateRecord): Unit

Add a new state record to the beginning of a list. After this call firstStateRecord should be value.

remove

open fun remove(element: T): Boolean

removeAll

open fun removeAll(elements: Collection<T>): Boolean

removeAt

open fun removeAt(index: Int): T

removeRange

fun removeRange(fromIndex: Int, toIndex: Int): Unit

retainAll

open fun retainAll(elements: Collection<T>): Boolean

set

open operator fun set(index: Int, element: T): T

subList

open fun subList(fromIndex: Int, toIndex: Int): MutableList<T>

toList

fun toList(): List<T>

Return a list containing all the elements of this list.

The list returned is immutable and returned will not change even if the content of the list is changed in the same snapshot. It also will be the same instance until the content is changed. It is not, however, guaranteed to be the same instance for the same list as adding and removing the same item from the this list might produce a different instance with the same content.

This operation is O(1) and does not involve a physically copying the list. It instead returns the underlying immutable list used internally to store the content of the list.

It is recommended to use toList when using returning the value of this list from androidx.compose.runtime.snapshotFlow.

toString

open fun toString(): String

Public properties

firstStateRecord

open val firstStateRecordStateRecord

The first state record in a linked list of state records.

size

open val sizeInt