mbug-1.1: src/Data/Text/Compat.hs
{-# LANGUAGE CPP #-}
module Data.Text.Compat
( module Data.Text
#if !MIN_VERSION_text(1,2,3)
, unsnoc
#endif
) where
import Prelude
import qualified Prelude as P
import Data.Text
import qualified Data.Text as T
-- This compatibility version is deliberately implemented in most
-- simple way possible. Using 'String'.
#if !MIN_VERSION_text(1,2,3)
unsnoc :: Text -> Maybe (Text, Char)
unsnoc txt =
case T.unpack txt of
[] -> Nothing
s -> Just (T.pack $ P.init s, P.last s)
#endif