@@ -537,7 +537,7 @@ mapAccumR f s t = case uncons t of
537537-- ** Generating and unfolding 'Text's
538538
539539-- | /O(n)/ 'replicate' @n@ @c@ is a 'Text' of length @n@ with @c@ the
540−-- value of every element.
540+-- value of every element. Subject to fusion.
541541replicate :: Int -> Char -> Text
542542replicate n c = unstream (S.replicate n c)
543543{-# INLINE replicate #-}
@@ -547,7 +547,8 @@ replicate n c = unstream (S.replicate n c)
547547-- 'Text' from a seed value. The function takes the element and
548548-- returns 'Nothing' if it is done producing the 'Text', otherwise
549549-- 'Just' @(a,b)@. In this case, @a@ is the next 'Char' in the
550−-- string, and @b@ is the seed value for further production.
550+-- string, and @b@ is the seed value for further production. Subject
551+-- to fusion.
551552unfoldr :: (a -> Maybe (Char,a)) -> a -> Text
552553unfoldr f s = unstream (S.unfoldr f s)
553554{-# INLINE unfoldr #-}
@@ -556,7 +557,8 @@ unfoldr f s = unstream (S.unfoldr f s)
556557-- value. However, the length of the result should be limited by the
557558-- first argument to 'unfoldrN'. This function is more efficient than
558559-- 'unfoldr' when the maximum length of the result is known and
559−-- correct, otherwise its performance is similar to 'unfoldr'.
560+-- correct, otherwise its performance is similar to 'unfoldr'. Subject
561+-- to fusion.
560562unfoldrN :: Int -> (a -> Maybe (Char,a)) -> a -> Text
561563unfoldrN n f s = unstream (S.unfoldrN n f s)
562564{-# INLINE unfoldrN #-}
@@ -566,7 +568,7 @@ unfoldrN n f s = unstream (S.unfoldrN n f s)
566568
567569-- | /O(n)/ 'take' @n@, applied to a 'Text', returns the prefix of the
568570-- 'Text' of length @n@, or the 'Text' itself if @n@ is greater than
569−-- the length of the Text.
571+-- the length of the Text. Subject to fusion.
570572take :: Int -> Text -> Text
571573take n t@(Text arr off len)
572574 | n <= 0 = empty
@@ -588,7 +590,7 @@ take n t@(Text arr off len)
588590
589591-- | /O(n)/ 'drop' @n@, applied to a 'Text', returns the suffix of the
590592-- 'Text' of length @n@, or the empty 'Text' if @n@ is greater than the
591−-- length of the 'Text'.
593+-- length of the 'Text'. Subject to fusion.
592594drop :: Int -> Text -> Text
593595drop n t@(Text arr off len)
594596 | n <= 0 = t