{-# LANGUAGE CPP #-} -------------------------------------------------------------------------------- -- | -- Module : Data.String.ToString.Instances -- Copyright : (c) 2009 Bas van Dijk -- License : BSD3 (see the file LICENSE) -- Maintainer : v.dijk.bas@gmail.com -- Stability : Stable -- -- This module exports the following instances for the 'ToString' class: -- -- * 'ShowS' -- -- * 'ByteString' -- -- * 'DString' -- -- * 'Doc' -- -- * 'Text' -- -- Note that the instances can be enabled or disabled based on cabal flags. -- -------------------------------------------------------------------------------- module Data.String.ToString.Instances where import Data.String.ToString (ToString, toString) #ifdef SHOWS import qualified Text.Show #endif #ifdef BYTESTRING import qualified Data.ByteString.Char8 #endif #ifdef DOC import qualified Text.PrettyPrint #endif #ifdef TEXT import qualified Data.Text import qualified Data.Text.Lazy #endif -------------------------------------------------------------------------------- -- ToString instances -------------------------------------------------------------------------------- #ifdef SHOWS instance ToString Text.Show.ShowS where toString s = s [] #endif #ifdef BYTESTRING instance ToString Data.ByteString.Char8.ByteString where toString = Data.ByteString.Char8.unpack #endif #ifdef DOC instance ToString Text.PrettyPrint.Doc where toString = Text.PrettyPrint.render #endif #ifdef TEXT instance ToString Data.Text.Text where toString = Data.Text.unpack instance ToString Data.Text.Lazy.Text where toString = Data.Text.Lazy.unpack #endif -- The End ---------------------------------------------------------------------