diff --git a/benedict/dicts/base/base_dict.py b/benedict/dicts/base/base_dict.py index dfe68afb..ce193ef4 100644 --- a/benedict/dicts/base/base_dict.py +++ b/benedict/dicts/base/base_dict.py @@ -1,5 +1,7 @@ # -*- coding: utf-8 -*- +from benedict.core import clone as _clone + class BaseDict(dict): @@ -37,6 +39,12 @@ def __contains__(self, key): return key in self._dict return super(BaseDict, self).__contains__(key) + def __deepcopy__(self, memo): + obj = self.__class__() + for key, value in self.items(): + obj[key] = _clone(value, memo=memo) + return obj + def __delitem__(self, key): if self._pointer: del self._dict[key]