| import numpy as np | |
| class Ch: | |
| def __setstate__(self, state): | |
| self.__dict__.update(state) | |
| def r(self): | |
| if "x" in self.__dict__: | |
| return self.__dict__["x"] | |
| return np.asarray(self) | |
| def __array__(self, dtype=None): | |
| array = np.asarray(self.r) | |
| if dtype is not None: | |
| array = array.astype(dtype) | |
| return array | |
| def shape(self): | |
| return np.asarray(self).shape | |
| def ndim(self): | |
| return np.asarray(self).ndim | |
| def __len__(self): | |
| return len(np.asarray(self)) | |
| def __getitem__(self, item): | |
| return np.asarray(self)[item] | |
| def reshape(self, *shape): | |
| return np.asarray(self).reshape(*shape) | |