    module Text.Groom (groom, groomString) where

    import Language.Haskell.Exts.Parser
    import Language.Haskell.Exts.Pretty

    groomString :: String -> String
    groomString :: String -> String
    groomString String
    s = case String -> ParseResult (Exp SrcSpanInfo)
    parseExp String
    s of
        ParseOk Exp SrcSpanInfo
    x -> Exp SrcSpanInfo -> String
    forall a. Pretty a => a -> String
    prettyPrint Exp SrcSpanInfo
    x
        ParseFailed{} -> String
    s

    groom :: Show a => a -> String
    groom :: forall a. Show a => a -> String
    groom = String -> String
    groomString (String -> String) -> (a -> String) -> a -> String
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . a -> String
    forall a. Show a => a -> String
    show