libb.setting_unlocked

setting_unlocked(setting)[source]

Context manager to safely modify a setting with unlock/lock protection.

Parameters:

setting (Setting) – The Setting object to unlock/lock.

Example:

>>> cfg = Setting()
>>> cfg.lock()
>>> with setting_unlocked(cfg):
...     cfg.foo = 'bar'
>>> cfg.foo
'bar'
>>> cfg.baz = 'qux'
Traceback (most recent call last):
 ...
ValueError: This Setting object is locked from editing