A list type that implements :class:`.Mutable`. The :class:`.MutableList` object implements a list that will emit change events to the underlying mapping when the contents of the list are altered, including when values are added or removed. Note that :class:`.MutableList` does **not** apply mutable tracking to the *values themselves* inside the list. Therefore it is not a sufficient solution for the use case of tracking deep changes to a *recursive* mutable structure, such as a JSON structure. To support this use case, build a subclass of :class:`.MutableList` that provides appropriate coercion to the values placed in the dictionary so that they too are "mutable", and emit events up to their parent structure. .. versionadded:: 1.1 .. seealso:: :class:`.MutableDict` :class:`.MutableSet`
Class Method | coerce |
Convert plain list to instance of this class. |
Method | __delitem__ |
Detect list del events and emit change events. |
Method | __iadd__ |
Undocumented |
Method | __reduce |
Undocumented |
Method | __setitem__ |
Detect list set events and emit change events. |
Method | __setstate__ |
Undocumented |
Method | append |
Undocumented |
Method | clear |
Undocumented |
Method | extend |
Undocumented |
Method | insert |
Undocumented |
Method | is |
Undocumented |
Method | is |
Undocumented |
Method | pop |
Undocumented |
Method | remove |
Undocumented |
Method | reverse |
Undocumented |
Method | sort |
Undocumented |
Inherited from Mutable
:
Class Method | as |
Associate a SQL type with this mutable Python type. |
Class Method | associate |
Associate this wrapper with all future mapped columns of the given type. |
Class Method | associate |
Establish this type as a mutation listener for the given mapped descriptor. |
Method | changed |
Subclasses should call this method whenever change events occur. |
Inherited from MutableBase
(via Mutable
):
Class Method | _get |
Given a descriptor attribute, return a ``set()`` of the attribute keys which indicate a change in the state of this attribute. |
Class Method | _listen |
Establish this type as a mutation listener for the given mapped descriptor. |
Property | _parents |
Dictionary of parent object's :class:`.InstanceState`->attribute name on the parent. |
def coerce(cls, key:
str
, value: MutableList[ _T]|_T
) -> Optional[ MutableList[ _T]]
:
(source)
¶
Convert plain list to instance of this class.