@@ -917,7 +917,7 @@ split :: Text -- ^ Text to split on
917917 -> Text -- ^ Input text
918918 -> [Text]
919919split pat src0
920− | l == 0 = emptyError "split"
920+ | null pat = emptyError "split"
921921 | l == 1 = splitWith (== (unsafeHead pat)) src0
922922 | otherwise = go src0
923923 where
@@ -958,7 +958,7 @@ splitTimes :: Int -- ^ Maximum number of times to split
958958 -> [Text]
959959splitTimes k pat src0
960960 | k <= 0 = [src0]
961− | l == 0 = emptyError "splitTimes"
961+ | null pat = emptyError "splitTimes"
962962 | otherwise = go k src0
963963 where
964964 l = length pat
@@ -1054,7 +1054,7 @@ filter p t = unstream (S.filter p (stream t))
10541054
10551055findAll :: Text -> Text -> (Text, [Text])
10561056findAll pat@(Text _ _ plen) src@(Text sarr soff slen)
1057− | plen == 0 = emptyError "findAll"
1057+ | plen <= 0 = emptyError "findAll"
10581058 | otherwise = (h,t)
10591059 where
10601060 (h:t) = go 0 (search 0)
@@ -1126,7 +1126,7 @@ elemIndices c t = S.elemIndices c (stream t)
11261126-- invalid, and will cause an error to be raised.
11271127count :: Text -> Text -> Int
11281128count pat src0
1129− | l == 0 = emptyError "count"
1129+ | null pat = emptyError "count"
11301130 | l == 1 = countChar (unsafeHead pat) src0
11311131 | otherwise = go 0 src0
11321132 where