[copy] is now fully functional, only hierarchy observers will be copied and pickled

This commit is contained in:
mzwiessele 2014-05-23 11:11:21 +01:00
parent 96e1e13f7e
commit 3525e45b2f
9 changed files with 89 additions and 59 deletions

View file

@ -30,9 +30,15 @@ class ObsAr(np.ndarray, Pickleable, Observable):
def __array_wrap__(self, out_arr, context=None):
return out_arr.view(np.ndarray)
def _setup_observers(self):
# do not setup anything, as observable arrays do not have default observers
pass
def copy(self):
from lists_and_dicts import ObserverList
memo = {}
memo[id(self)] = self
memo[id(self.observers)] = ObserverList()
return self.__deepcopy__(memo)
def __deepcopy__(self, memo):