'Save this saveable.
Args:
is_exit: Whether we\'re currently exiting qutebrowser.
explicit: Whether the user explicitly requested this save.
silent: Don\'t write informations to log.
force: Force saving, no matter what.'

def save(self, is_exit=False, explicit=False, silent=False, force=False):

    if ((self._config_opt is not None) and (not config.get(*self._config_opt)) and (not explicit) and (not force)):
        if (not silent):
            log.save.debug('Not    saving    {name}    because    autosaving    has    been    disabled    by    {cfg[0]}    ->    {cfg[1]}.'.format(name=self._name, cfg=self._config_opt))
        return
    do_save = (self._dirty or (self._save_on_exit and is_exit) or force)
    if (not silent):
        log.save.debug('Save    of    {}    requested    -    dirty    {},    save_on_exit    {},    is_exit    {},    force    {}    ->    {}'.format(self._name, self._dirty, self._save_on_exit, is_exit, force, do_save))
    if do_save:
        self._save_handler()
        self._dirty = False
