X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Text%2FShow.hs;h=3f2e1a78237ca64b872f82567c32999257981a71;hb=f7a485978f04e84b086f1974b88887cc72d832d0;hp=28294f1c553651afc7f8a2415db928b259a92432;hpb=7f1f4e7a695c402ddd3a1dc2cc7114e649a78ebc;p=ghc-base.git diff --git a/Text/Show.hs b/Text/Show.hs index 28294f1..3f2e1a7 100644 --- a/Text/Show.hs +++ b/Text/Show.hs @@ -1,17 +1,15 @@ {-# OPTIONS -fno-implicit-prelude #-} ----------------------------------------------------------------------------- --- +-- | -- 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.1 2001/06/28 14:15:04 simonmar Exp $ --- --- Exiting the program. +-- The Show class and associated functions. -- ----------------------------------------------------------------------------- @@ -26,9 +24,21 @@ module Text.Show ( showChar, -- :: Char -> ShowS showString, -- :: String -> ShowS showParen, -- :: Bool -> ShowS -> ShowS + showListWith, -- :: (a -> ShowS) -> [a] -> ShowS ) where #ifdef __GLASGOW_HASKELL__ import GHC.Show #endif +#ifdef __GLASGOW_HASKELL__ +showListWith :: (a -> ShowS) -> [a] -> ShowS +showListWith = showList__ +#else +showList__ :: (a -> ShowS) -> [a] -> ShowS +showList__ _ [] s = "[]" ++ s +showList__ showx (x:xs) s = '[' : showx x (showl xs) + where + showl [] = ']' : s + showl (y:ys) = ',' : showx y (showl ys) +#endif