From d5ed4d7a7143aac1d24b6c7f99ef1f8d318953f3 Mon Sep 17 00:00:00 2001 From: Awni Hannun Date: Mon, 16 Sep 2024 13:21:04 -0700 Subject: [PATCH] override class function (#1418) --- python/mlx/_reprlib_fix.py | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/python/mlx/_reprlib_fix.py b/python/mlx/_reprlib_fix.py index 02bf661dc..29485f369 100644 --- a/python/mlx/_reprlib_fix.py +++ b/python/mlx/_reprlib_fix.py @@ -3,18 +3,14 @@ import array import reprlib - -class FixedRepr(reprlib.Repr): - """Only route python array instances to repr_array.""" - - def repr_array(self, x, maxlevel): - if isinstance(x, array.array): - return super().repr_array(x, maxlevel) - else: - return self.repr_instance(x, maxlevel) +_old_repr_array = reprlib.Repr.repr_array -# We need to monkey-patch reprlib so that we can use the debugger without -# renaming the array to something else -fixed_repr = FixedRepr() -reprlib.repr = fixed_repr.repr +def repr_array(self, x, maxlevel): + if isinstance(x, array.array): + return _old_repr_array(self, x, maxlevel) + else: + return self.repr_instance(x, maxlevel) + + +reprlib.Repr.repr_array = repr_array