@@ -40,7 +40,6 @@ def __set__(self, container, value):
4040 if self .isnplikearray :
4141 self .__get__ (container = container )[:] = value
4242 elif hasattr (value , "_xobject" ): # value is a dressed xobject
43-
4443 # Copy xobject data from value inside self._xobject
4544 # (unless same memory area or Ref and same buffer,
4645 # in the latter case reference mechanism is used)
@@ -390,14 +389,17 @@ def compile_kernels(self, *args, **kwargs):
390389 return self ._xobject .compile_kernels (* args , ** kwargs )
391390
392391 def __repr__ (self ):
393-
394392 if hasattr (self , "_repr_fields" ):
395393 fnames = self ._repr_fields
396394 else :
397395 fnames = []
398396 if hasattr (self , "_add_to_repr" ):
399397 fnames += self ._add_to_repr
400- fnames += [fname for fname in self ._fields ]
398+ fnames += [
399+ fname
400+ for fname in self ._xofields .keys ()
401+ if not fname .startswith ("_" )
402+ ]
401403 if hasattr (self , "_skip_in_repr" ):
402404 fnames = [ff for ff in fnames if ff not in self ._skip_in_repr ]
403405
@@ -406,6 +408,12 @@ def __repr__(self):
406408 vv = getattr (self , fname )
407409 if isinstance (vv , float ):
408410 vvrepr = f"{ vv :.3g} "
411+ elif isinstance (vv , np .ndarray ):
412+ vvrepr = repr (vv )
413+ # kill "array("
414+ vvrepr = vvrepr .split ("(" , 1 )[1 ]
415+ # kill trailing ")"
416+ vvrepr = vvrepr .rsplit (")" , 1 )[0 ]
409417 else :
410418 vvrepr = repr (vv )
411419 args .append (f"{ fname } ={ vvrepr } " )
0 commit comments