{-# 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