module Psi.Show (
    module X

  , renderBool
  , renderFractional
  , renderIntegral
  ) where

import           Data.Text (Text, pack)

import           Text.Show as X
import           Text.Read as X (Read, reads, readMaybe, readEither)

renderIntegral :: (Show a, Integral a) => a -> Text
renderIntegral :: forall a. (Show a, Integral a) => a -> Text
renderIntegral = String -> Text
pack (String -> Text) -> (a -> String) -> a -> Text
forall b c a. (b -> c) -> (a -> b) -> a -> c
. a -> String
forall a. Show a => a -> String
show

renderFractional :: (Show a, Fractional a) => a -> Text
renderFractional :: forall a. (Show a, Fractional a) => a -> Text
renderFractional = String -> Text
pack (String -> Text) -> (a -> String) -> a -> Text
forall b c a. (b -> c) -> (a -> b) -> a -> c
. a -> String
forall a. Show a => a -> String
show

renderBool :: Bool -> Text
renderBool :: Bool -> Text
renderBool = String -> Text
pack (String -> Text) -> (Bool -> String) -> Bool -> Text
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> String
forall a. Show a => a -> String
show