Immutable Core

Immutable Objects.

shoobx.immutable.immutable.update(im, *args, **kw)

Update an immutable object.

This is a helper method for IImmutable.__im_update__(*args, **kw).

class shoobx.immutable.immutable.ImmutableBase

Immutable Base

Core functionality for all immutable objects.

While the class can be used directly, it is meant to be a base class only.

See shoobx.immutable.interfaces.IImmutable

__im_mode__ = 'master'
__im_state__ = 'transient'
__im_conform__(object)
__im_clone__()
__im_finalize__()
__im_set_state__(state)
__im_after_create__(*args, **kw)
__im_before_update__(clone)
__im_after_update__(clone)
classmethod __im_create__(mode=None, finalize=True, *create_args, **create_kw)
__im_update__(*args, **kw)
__im_is_internal_attr__(name)
__setattr__(name, value)

Implement setattr(self, name, value).

class shoobx.immutable.immutable.Immutable

Bases: shoobx.immutable.immutable.ImmutableBase

See shoobx.immutable.interfaces.IImmutableObject

class shoobx.immutable.immutable.ImmutableDict(*args, **kw)

Bases: shoobx.immutable.immutable.ImmutableBase, collections.UserDict

class shoobx.immutable.immutable.ImmutableSet(*args, **kw)

Bases: shoobx.immutable.immutable.ImmutableBase, collections.abc.MutableSet

class shoobx.immutable.immutable.ImmutableList(*args, **kw)

Bases: shoobx.immutable.immutable.ImmutableBase, collections.UserList