Use explicit language extensions & remove extension fields from base.cabal
[ghc-base.git] / Text / Show.hs
index 17e9f44..4d23e57 100644 (file)
@@ -1,42 +1,44 @@
-{-# OPTIONS -fno-implicit-prelude #-}
+{-# LANGUAGE CPP, NoImplicitPrelude #-}
+
 -----------------------------------------------------------------------------
--- 
+-- |
 -- Module      :  Text.Show
 -- Copyright   :  (c) The University of Glasgow 2001
--- License     :  BSD-style (see the file libraries/core/LICENSE)
+-- License     :  BSD-style (see the file libraries/base/LICENSE)
 -- 
 -- Maintainer  :  libraries@haskell.org
 -- Stability   :  provisional
 -- Portability :  portable
 --
--- $Id: Show.hs,v 1.2 2001/07/04 12:06:33 simonmar Exp $
---
--- The Show class and associated functions.
+-- Converting values to readable strings:
+-- the 'Show' class and associated functions.
 --
 -----------------------------------------------------------------------------
 
 module Text.Show (
-   ShowS,              -- String -> String
+   ShowS,               -- String -> String
    Show(
-      showsPrec,       -- :: Int -> a -> ShowS
-      show,            -- :: a   -> String
-      showList         -- :: [a] -> ShowS 
+      showsPrec,        -- :: Int -> a -> ShowS
+      show,             -- :: a   -> String
+      showList          -- :: [a] -> ShowS 
     ),
-   shows,              -- :: (Show a) => a -> ShowS
-   showChar,           -- :: Char -> ShowS
-   showString,         -- :: String -> ShowS
-   showParen,          -- :: Bool -> ShowS -> ShowS
-   showListWith,       -- :: (a -> ShowS) -> [a] -> ShowS 
+   shows,               -- :: (Show a) => a -> ShowS
+   showChar,            -- :: Char -> ShowS
+   showString,          -- :: String -> ShowS
+   showParen,           -- :: Bool -> ShowS -> ShowS
+   showListWith,        -- :: (a -> ShowS) -> [a] -> ShowS 
  ) where
 
 #ifdef __GLASGOW_HASKELL__
 import GHC.Show
-#endif   
+#endif
 
-#ifdef __GLASGOW_HASKELL__
-showListWith :: (a -> ShowS) -> [a] -> ShowS 
+-- | Show a list (using square brackets and commas), given a function
+-- for showing elements.
+showListWith :: (a -> ShowS) -> [a] -> ShowS
 showListWith = showList__
-#else
+
+#ifndef __GLASGOW_HASKELL__
 showList__ :: (a -> ShowS) ->  [a] -> ShowS
 showList__ _     []     s = "[]" ++ s
 showList__ showx (x:xs) s = '[' : showx x (showl xs)