(self)
| 310 | return tuple(chunks) |
| 311 | |
| 312 | def _layer(self): |
| 313 | x = self.array |
| 314 | parts = [ |
| 315 | list(partition_all(self.split_every.get(i, 1), range(n))) |
| 316 | for (i, n) in enumerate(x.numblocks) |
| 317 | ] |
| 318 | keys = product(*map(range, map(len, parts))) |
| 319 | if not self.keepdims: |
| 320 | out_axis = [i for i in range(x.ndim) if i not in self.split_every] |
| 321 | getter = lambda k: get(out_axis, k) |
| 322 | keys = map(getter, keys) |
| 323 | dsk = {} |
| 324 | for k, p in zip(keys, product(*parts)): |
| 325 | free = { |
| 326 | i: j[0] |
| 327 | for (i, j) in enumerate(p) |
| 328 | if len(j) == 1 and i not in self.split_every |
| 329 | } |
| 330 | dummy = dict(i for i in enumerate(p) if i[0] in self.split_every) |
| 331 | g = lol_tuples((x.name,), range(x.ndim), free, dummy) |
| 332 | dsk[(self._name,) + k] = (self.func, g) |
| 333 | |
| 334 | return dsk |
| 335 | |
| 336 | @property |
| 337 | def _meta(self): |
nothing calls this directly
no test coverage detected