Base Classes

About

FrozenBase is the base class for frozendict and FrozenOrderedDict. If you wish to construct your own frozen dictionary classes, you may inherit from this class.

API Reference

Classes:

DictWrapper()

Abstract Mixin class for classes that wrap a dict object or similar.

FrozenBase(*args, **kwargs)

Abstract Base Class for Frozen dictionaries.

MutableBase(*args, **kwargs)

Abstract Base Class for mutable dictionaries.

Data:

KT

Invariant TypeVar.

T

Invariant TypeVar.

VT

Invariant TypeVar.

_D

Invariant TypeVar bound to cawdrey.base.DictWrapper.

class DictWrapper[source]

Bases: Mapping[~KT, ~VT]

Abstract Mixin class for classes that wrap a dict object or similar.

Methods:

__contains__(key)

Return key in self.

__getitem__(key)

Return self[key].

__iter__()

Iterates over the dictionary’s keys.

__len__()

Returns the number of keys in the dictionary.

__repr__()

Return a string representation of the DictWrapper.

copy(*args, **kwargs)

Return a copy of the dictionary.

get(k[, default])

Return the value for k if k is in the dictionary, else default.

items()

Returns a set-like object providing a view on the dictionary’s items.

keys()

Returns a set-like object providing a view on the dictionary’s keys.

values()

Returns an object providing a view on the bdict's values.

__contains__(key)[source]

Return key in self.

Parameters

key (object)

Return type

bool

__getitem__(key)[source]

Return self[key].

Parameters

key (~KT)

Return type

~VT

__iter__()[source]

Iterates over the dictionary’s keys.

Return type

Iterator[~KT]

__len__()[source]

Returns the number of keys in the dictionary.

Return type

int

__repr__()[source]

Return a string representation of the DictWrapper.

Return type

str

abstract copy(*args, **kwargs)[source]

Return a copy of the dictionary.

Return type

~_D

get(k, default=None)[source]

Return the value for k if k is in the dictionary, else default.

Parameters
  • k – The key to return the value for.

  • default – The value to return if key is not in the dictionary. Default None.

Overloads
items()[source]

Returns a set-like object providing a view on the dictionary’s items.

Return type

AbstractSet[Tuple[~KT, ~VT]]

keys()[source]

Returns a set-like object providing a view on the dictionary’s keys.

Return type

AbstractSet[~KT]

values()[source]

Returns an object providing a view on the bdict's values.

Return type

ValuesView[~VT]

class FrozenBase(*args, **kwargs)[source]

Bases: DictWrapper[~KT, ~VT]

Abstract Base Class for Frozen dictionaries.

Used by frozendict and FrozenOrderedDict.

Custom subclasses must implement at a minimum __init__, copy, fromkeys.

Methods:

fromkeys(iterable[, value])

Create a new dictionary with keys from iterable and values set to value.

classmethod fromkeys(iterable, value=None)[source]

Create a new dictionary with keys from iterable and values set to value.

Return type

FrozenBase[~KT, ~VT]

Overloads
KT = TypeVar(KT)

Type:    TypeVar

Invariant TypeVar.

typing.TypeVar used for annotating key types in mappings.

class MutableBase(*args, **kwargs)[source]

Bases: DictWrapper[~KT, ~VT], MutableMapping[~KT, ~VT]

Abstract Base Class for mutable dictionaries.

Used by NonelessDict and NonelessOrderedDict.

Custom subclasses must implement at a minimum __init__, copy, fromkeys.

Methods:

__delitem__(key)

Delete self[key].

__setitem__(key, value)

Set self[key] to value.

fromkeys(iterable[, value])

Create a new dictionary with keys from iterable and values set to value.

__delitem__(key)[source]

Delete self[key].

__setitem__(key, value)[source]

Set self[key] to value.

classmethod fromkeys(iterable, value=None)[source]

Create a new dictionary with keys from iterable and values set to value.

Return type

MutableBase[~KT, ~VT]

Overloads
T = TypeVar(T)

Type:    TypeVar

Invariant TypeVar.

VT = TypeVar(VT)

Type:    TypeVar

Invariant TypeVar.

typing.TypeVar used for annotating value types in mappings.

_D = TypeVar(_D, bound=DictWrapper)

Type:    TypeVar

Invariant TypeVar bound to cawdrey.base.DictWrapper.