File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -70,19 +70,7 @@ def key1(f, d):
7070 if f .is_regular :
7171 # For paddable objects the following holds:
7272 # `same dim + same halo + same padding_dtype => same (auto-)padding`
73- if d is f .dimensions [- 1 ]:
74- # Only the last dimension is padded
75- try :
76- if f .padding == f .mapped .padding :
77- # Padding set from the mapped Function
78- # e.g. from buffering or fft temp array
79- pad_key = f .mapped .__padding_dtype__
80- else :
81- pad_key = f .__padding_dtype__
82- except AttributeError :
83- pad_key = f .__padding_dtype__
84- else :
85- pad_key = None
73+ pad_key = f .__padding_dtype__ if d is f .dimensions [- 1 ] else None
8674
8775 return (d , f ._size_halo [d ], pad_key )
8876 else :
Original file line number Diff line number Diff line change @@ -247,7 +247,24 @@ class MappedArrayMixin:
247247
248248
249249class ArrayMapped (MappedArrayMixin , Array ):
250- is_autopaddable = True
250+
251+ def __init_finalize__ (self , * args , ** kwargs ):
252+ self ._mapped = kwargs .get ('mapped' )
253+ super ().__init_finalize__ (* args , ** kwargs )
254+
255+ @property
256+ def mapped (self ):
257+ return self ._mapped
258+
259+ @property
260+ def is_autopaddable (self ):
261+ return self .mapped is not None and self .mapped .is_autopaddable
262+
263+ @property
264+ def __padding_dtype__ (self ):
265+ if self .mapped is None :
266+ return None
267+ return self .mapped .__padding_dtype__
251268
252269
253270class ArrayObject (ArrayBasic ):
You can’t perform that action at this time.
0 commit comments