From e3d81c43180e3ad401138bca60dd9e810899683b Mon Sep 17 00:00:00 2001 From: Brock Date: Tue, 27 Jun 2023 21:36:32 -0700 Subject: [PATCH] REF: de-duplicate CoW helpers --- pandas/core/internals/blocks.py | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/pandas/core/internals/blocks.py b/pandas/core/internals/blocks.py index 832e1560ae55e..80069f1fcacbd 100644 --- a/pandas/core/internals/blocks.py +++ b/pandas/core/internals/blocks.py @@ -583,20 +583,6 @@ def _maybe_copy(self, using_cow: bool, inplace: bool) -> Self: blk = self if inplace else self.copy() return blk - @final - def _get_values_and_refs(self, using_cow, inplace): - if using_cow: - if inplace and not self.refs.has_reference(): - refs = self.refs - new_values = self.values - else: - refs = None - new_values = self.values.copy() - else: - refs = None - new_values = self.values if inplace else self.values.copy() - return new_values, refs - @final def _get_refs_and_copy(self, using_cow: bool, inplace: bool): refs = None @@ -738,11 +724,10 @@ def _replace_regex( rx = re.compile(to_replace) - new_values, refs = self._get_values_and_refs(using_cow, inplace) + block = self._maybe_copy(using_cow, inplace) - replace_regex(new_values, rx, value, mask) + replace_regex(block.values, rx, value, mask) - block = self.make_block(new_values, refs=refs) return block.convert(copy=False, using_cow=using_cow) @final