Skip to content

Commit 48a7a5e

Browse files
committed
Add doc tests for splitEndBySeq and splitEndBySeq_
1 parent 5810ed0 commit 48a7a5e

File tree

1 file changed

+104
-0
lines changed

1 file changed

+104
-0
lines changed

core/src/Streamly/Internal/Data/Stream/Nesting.hs

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3601,6 +3601,58 @@ splitOnSuffixSeq withSep patArr (Fold fstep initial _ final) (Stream step state)
36013601
--
36023602
-- >>> splitEndBySeq pat f = Stream.foldMany (Fold.takeEndBySeq pat f)
36033603
--
3604+
-- Usage:
3605+
--
3606+
-- >>> splitOnSuffix p xs = Stream.fold Fold.toList $ Stream.splitEndBySeq (Array.fromList p) Fold.toList (Stream.fromList xs)
3607+
--
3608+
-- >>> splitOnSuffix "" ""
3609+
-- []
3610+
--
3611+
-- >>> splitOnSuffix "." ""
3612+
-- []
3613+
--
3614+
-- >>> splitOnSuffix ".." ""
3615+
-- []
3616+
--
3617+
-- >>> splitOnSuffix "..." ""
3618+
-- []
3619+
--
3620+
-- >>> splitOnSuffix "" "a...b"
3621+
-- ["a",".",".",".","b"]
3622+
--
3623+
-- >>> splitOnSuffix "." "a...b"
3624+
-- ["a.",".",".","b"]
3625+
--
3626+
-- >>> splitOnSuffix ".." "a...b"
3627+
-- ["a..",".b"]
3628+
--
3629+
-- >>> splitOnSuffix "..." "a...b"
3630+
-- ["a...","b"]
3631+
--
3632+
-- >>> splitOnSuffix "." "abc"
3633+
-- ["abc"]
3634+
--
3635+
-- >>> splitOnSuffix ".." "abc"
3636+
-- ["abc"]
3637+
--
3638+
-- >>> splitOnSuffix "..." "abc"
3639+
-- ["abc"]
3640+
--
3641+
-- >>> splitOnSuffix "." "."
3642+
-- ["."]
3643+
--
3644+
-- >>> splitOnSuffix ".." ".."
3645+
-- [".."]
3646+
--
3647+
-- >>> splitOnSuffix "..." "..."
3648+
-- ["..."]
3649+
--
3650+
-- >>> splitOnSuffix "." ".a"
3651+
-- [".","a"]
3652+
--
3653+
-- >>> splitOnSuffix "." "a."
3654+
-- ["a."]
3655+
--
36043656
-- Uses Rabin-Karp algorithm for substring search.
36053657
--
36063658
{-# INLINE_NORMAL splitEndBySeq #-}
@@ -3618,6 +3670,58 @@ splitEndBySeq = splitOnSuffixSeq True
36183670
--
36193671
-- >>> splitEndBySeq_ pat f = Stream.foldMany (Fold.takeEndBySeq_ pat f)
36203672
--
3673+
-- Usage:
3674+
--
3675+
-- >>> splitOnSuffix p xs = Stream.fold Fold.toList $ Stream.splitEndBySeq_ (Array.fromList p) Fold.toList (Stream.fromList xs)
3676+
--
3677+
-- >>> splitOnSuffix "" ""
3678+
-- []
3679+
--
3680+
-- >>> splitOnSuffix "." ""
3681+
-- []
3682+
--
3683+
-- >>> splitOnSuffix ".." ""
3684+
-- []
3685+
--
3686+
-- >>> splitOnSuffix "..." ""
3687+
-- []
3688+
--
3689+
-- >>> splitOnSuffix "" "a...b"
3690+
-- ["a",".",".",".","b"]
3691+
--
3692+
-- >>> splitOnSuffix "." "a...b"
3693+
-- ["a","","","b"]
3694+
--
3695+
-- >>> splitOnSuffix ".." "a...b"
3696+
-- ["a",".b"]
3697+
--
3698+
-- >>> splitOnSuffix "..." "a...b"
3699+
-- ["a","b"]
3700+
--
3701+
-- >>> splitOnSuffix "." "abc"
3702+
-- ["abc"]
3703+
--
3704+
-- >>> splitOnSuffix ".." "abc"
3705+
-- ["abc"]
3706+
--
3707+
-- >>> splitOnSuffix "..." "abc"
3708+
-- ["abc"]
3709+
--
3710+
-- >>> splitOnSuffix "." "."
3711+
-- [""]
3712+
--
3713+
-- >>> splitOnSuffix ".." ".."
3714+
-- [""]
3715+
--
3716+
-- >>> splitOnSuffix "..." "..."
3717+
-- [""]
3718+
--
3719+
-- >>> splitOnSuffix "." ".a"
3720+
-- ["","a"]
3721+
--
3722+
-- >>> splitOnSuffix "." "a."
3723+
-- ["a"]
3724+
--
36213725
-- Uses Rabin-Karp algorithm for substring search.
36223726
--
36233727
{-# INLINE_NORMAL splitEndBySeq_ #-}

0 commit comments

Comments
 (0)