unlifted-0.1.0.0: src/Data/Text/Short/Unlifted.hs
{-# language GADTSyntax #-}
{-# language KindSignatures #-}
{-# language MagicHash #-}
{-# language UnliftedNewtypes #-}
module Data.Text.Short.Unlifted
( ShortText#(..)
, lift
, unlift
) where
import Data.Unlifted (ShortText#(ShortText#))
import Data.Text.Short (ShortText)
import Data.ByteString.Short.Internal as TS
import qualified Data.Text.Short as TS
import qualified Data.Text.Short.Unsafe as TS
lift :: ShortText# -> ShortText
lift (ShortText# x) = TS.fromShortByteStringUnsafe (SBS x)
unlift :: ShortText -> ShortText#
unlift t = case TS.toShortByteString t of
SBS x -> ShortText# x