MCPcopy Create free account
hub / github.com/cdgriffith/Box / setdefault

Method setdefault

box/box.py:889–902  ·  view source on GitHub ↗
(self, item, default=None)

Source from the content-addressed store, hash-verified

887 self._box_config["frozen_box"] = was_frozen
888
889 def setdefault(self, item, default=None):
890 if item in self:
891 return self[item]
892
893 if self._box_config["box_dots"]:
894 if item in _get_dot_paths(self):
895 return self[item]
896
897 if isinstance(default, dict):
898 default = self._box_config["box_class"](default, **self.__box_config(extra_namespace=item))
899 if isinstance(default, list):
900 default = box.BoxList(default, **self.__box_config(extra_namespace=item))
901 self[item] = default
902 return self[item]
903
904 def _safe_attr(self, attr):
905 """Convert a key into something that is accessible as an attribute"""

Callers 7

test_set_default_dictMethod · 0.95
test_set_defaultMethod · 0.95
test_bad_recursiveMethod · 0.95
test_setdefault_dotsMethod · 0.95

Calls 2

__box_configMethod · 0.95
_get_dot_pathsFunction · 0.85

Tested by 7

test_set_default_dictMethod · 0.76
test_set_defaultMethod · 0.76
test_bad_recursiveMethod · 0.76
test_setdefault_dotsMethod · 0.76