CallbackDict¶
- class echo.CallbackDict(callback, *args, **kwargs)[source]¶
Bases:
dict,ContainerMixinA dictionary that calls a callback function when it is modified.
The first argument should be the callback function (which takes no arguments), and subsequent arguments are passed to dict.
Methods
add_callback(func[, priority, validator])Add a callback to the container.
clear()copy()fromkeys(iterable[, value])Create a new dictionary with keys from iterable and values set to value.
get(key[, default])Return the value for key if key is in the dictionary, else default.
items()keys()pop(k[,d])If the key is not found, return the default if given; otherwise, raise a KeyError.
popitem()Remove and return a (key, value) pair as a 2-tuple.
remove_callback(func)Remove a callback from the container.
setdefault(key[, default])Insert key with a value of default if key is not in the dictionary.
update([E, ]**F)If E is present and has a .keys() method, then does: for k in E.keys(): D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
values()notify_all
Methods Summary
add_callback(func[, priority, validator])Add a callback to the container.
clear()copy()fromkeys(iterable[, value])Create a new dictionary with keys from iterable and values set to value.
get(key[, default])Return the value for key if key is in the dictionary, else default.
items()keys()notify_all(*args, **kwargs)pop(k[,d])If the key is not found, return the default if given; otherwise, raise a KeyError.
popitem()Remove and return a (key, value) pair as a 2-tuple.
remove_callback(func)Remove a callback from the container.
setdefault(key[, default])Insert key with a value of default if key is not in the dictionary.
update([E, ]**F)If E is present and has a .keys() method, then does: for k in E.keys(): D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
values()Methods Documentation
- add_callback(func, priority=0, validator=False)¶
Add a callback to the container.
Note that validators are applied on a per item basis, whereas regular callbacks are called with the whole list after modification.
- Parameters:
- funcfunc
The callback function to add
- priorityint, optional
This can optionally be used to force a certain order of execution of callbacks (larger values indicate a higher priority).
- validatorbool, optional
Whether the callback is a validator, which is a special kind of callback that gets called with the item being added to the container before the container is modified. The validator can return the value as-is, modify it, or emit warnings or an exception.
- copy() a shallow copy of D¶
- classmethod fromkeys(iterable, value=None, /)¶
Create a new dictionary with keys from iterable and values set to value.
- get(key, default=None, /)¶
Return the value for key if key is in the dictionary, else default.
- items() a set-like object providing a view on D's items¶
- keys() a set-like object providing a view on D's keys¶
- notify_all(*args, **kwargs)¶
- pop(k[, d]) v, remove specified key and return the corresponding value.[source]¶
If the key is not found, return the default if given; otherwise, raise a KeyError.
- popitem()[source]¶
Remove and return a (key, value) pair as a 2-tuple.
Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.
- remove_callback(func)¶
Remove a callback from the container.
- setdefault(key, default=None, /)¶
Insert key with a value of default if key is not in the dictionary.
Return the value for key if key is in the dictionary, else default.
- update([E, ]**F) None. Update D from mapping/iterable E and F.[source]¶
If E is present and has a .keys() method, then does: for k in E.keys(): D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
- values() an object providing a view on D's values¶