{-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE TypeSynonymInstances #-} module Util (Normalisable(..)) where import Data.Maybe (fromMaybe) import qualified Data.Text as T ---------------------------------------------------------------------------------------------------- class Normalisable a where normaliseVariant :: a -> a instance Normalisable [Char] where normaliseVariant = T.unpack . normaliseVariant . T.pack instance Normalisable T.Text where normaliseVariant str = fromMaybe str (T.stripSuffix (T.pack "'") str)