docs: def _posify_mask_subindexer(index):
      """Convert masked indices in a flat array to the nearest unmasked index.
  
      Parameters
      ----------
      index : np.ndarray
          One dimensional ndarray with dtype=int.
  
      Returns
      -------
      np.ndarray
          One dimensional ndarray with all values equal to -1 replaced by an
          adjacent non-masked element.
      """
      masked = index == -1
      unmasked_locs = np.flatnonzero(~masked)
      if not unmasked_locs.size:
          # indexing unmasked_locs is invalid
          return np.zeros_like(index)
      masked_locs = np.flatnonzero(masked)
      prev_value = np.maximum(0, np.searchsorted(unmasked_locs, masked_locs) - 1)
      new_index = index.copy()
      new_index[masked_locs] = index[unmasked_locs[prev_value]]
      return new_index