{-
-- | /O(n)/ Yield the indices of elements satisfying the predicate in ascending
-- order.
findIndices :: ((a, b) -> Bool) -> (Vector k) (Rec (TaggedFunctor Identity) rs) -> (Vector k) u v Int
findIndices = G.findIndices
{-# INLINE findIndices #-}
-}

-- | /O(n)/ Yield 'Just' the index of the first occurence of the given element or
-- 'Nothing' if the vector does not contain the element. This is a specialised
-- version of 'findIndex'.
elemIndex :: (G.Vector (Vector k) (Rec (TaggedFunctor Identity) rs), Eq (Rec (TaggedFunctor Identity) rs))
  => Rec (TaggedFunctor Identity) rs -> (Vector k) (Rec (TaggedFunctor Identity) rs) -> Maybe Int
elemIndex = G.elemIndex
elemIndex :: (G.Vector (Vector k) (Rec (TaggedFunctor Identity) rs), Eq (Rec (TaggedFunctor Identity) rs))
  => Rec (TaggedFunctor Identity) rs -> (Vector k) (Rec (TaggedFunctor Identity) rs) -> Maybe Int
elemIndex = G.elemIndex
elemIndex = G.elemIndex