浏览代码

Fix Ticket https://trac.osgeo.org/grass/ticket/2060, deepcopy now works

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@57506 15284696-431f-4ddb-bdfa-cd5b030d7da7
Pietro Zambelli 11 年之前
父节点
当前提交
9788dc283e
共有 1 个文件被更改,包括 7 次插入0 次删除
  1. 7 0
      lib/python/pygrass/modules/interface/typedict.py

+ 7 - 0
lib/python/pygrass/modules/interface/typedict.py

@@ -4,6 +4,7 @@ Created on Tue Apr  2 18:37:02 2013
 
 @author: pietro
 """
+from copy import deepcopy
 try:
     from collections import OrderedDict
 except ImportError:
@@ -45,6 +46,12 @@ class TypeDict(OrderedDict):
     def __call__(self):
         return [self.__getitem__(obj) for obj in self.__iter__()]
 
+    def __deepcopy__(self, memo):
+        obj = TypeDict(self._type)
+        for k, v in self.iteritems():
+            obj[k] = deepcopy(v)
+        return obj
+
     def used(self):
         key_dict = {}
         for key in self: