multirec-0.7.5: Generic programming for families of recursive datatypes

Copyright(c) 2008--2010 Universiteit Utrecht
LicenseBSD3
Maintainergenerics@haskell.org
Stabilityexperimental
Portabilitynon-portable
Safe HaskellSafe-Inferred
LanguageHaskell98

Generics.MultiRec.Show

Contents

Description

Generic show.

Synopsis

Generic show

class HFunctor phi f => HShow phi f where Source

The list in the result type allows us to get at the fields of a constructor individually, which in turn allows us to insert additional stuff in between if record notation is used.

Methods

hShowsPrecAlg :: Algebra' phi f [Int -> ShowS] Source

Instances

HShow phi U 
Show a => HShow phi (K a)

For constant types, we make use of the standard show function.

El phi xi => HShow phi (I xi) 
(Constructor c, HShow phi f) => HShow phi (C c f) 
(Show1 f, Traversable f, HShow phi g) => HShow phi ((:.:) f g) 
HShow phi f => HShow phi ((:>:) f ix) 
(HShow phi f, HShow phi g) => HShow phi ((:*:) f g) 
(HShow phi f, HShow phi g) => HShow phi ((:+:) f g) 

class Show1 f where Source

Methods

show1 :: f [Int -> ShowS] -> Int -> ShowS Source

Instances

showsPrec :: (Fam phi, HShow phi (PF phi)) => phi ix -> Int -> ix -> ShowS Source

show :: (Fam phi, HShow phi (PF phi)) => phi ix -> ix -> String Source

Utilities