Copyright | (c) 2009--2010 Universiteit Utrecht |
---|---|
License | BSD3 |
Maintainer | generics@haskell.org |
Stability | experimental |
Portability | non-portable |
Safe Haskell | Safe |
Language | Haskell2010 |
Generic read.
Synopsis
- class CountAtoms (f :: (* -> *) -> * -> *) where
- countatoms :: f r ix -> Int
- class HReadPrec (phi :: * -> *) (f :: (* -> *) -> * -> *) where
- class Read1 f where
- readCons :: Constructor c => ReadPrec (f I0 ix) -> ReadPrec (C c f I0 ix)
- readPrefixCons :: ReadPrec (f I0 ix) -> Bool -> String -> ReadPrec (f I0 ix)
- readInfixCons :: (HReadPrec phi f, HReadPrec phi g) => phi ix -> (forall ix1. phi ix1 -> ReadPrec (I0 ix1)) -> (Associativity, Int, Bool) -> String -> ReadPrec ((f :*: g) I0 ix)
- readNoArgsCons :: String -> ReadPrec (U I0 ix)
- appPrec :: Int
- readPrec :: (Fam phi, HReadPrec phi (PF phi)) => phi ix -> ReadPrec ix
- readsPrec :: (Fam phi, HReadPrec phi (PF phi)) => phi ix -> Int -> ReadS ix
- read :: (Fam phi, HReadPrec phi (PF phi)) => phi ix -> String -> ix
Documentation
class CountAtoms (f :: (* -> *) -> * -> *) where Source #
countatoms :: f r ix -> Int Source #
Instances
CountAtoms (K a) Source # | |
Defined in Generics.MultiRec.Read countatoms :: K a r ix -> Int Source # | |
CountAtoms (I xi) Source # | |
Defined in Generics.MultiRec.Read countatoms :: I xi r ix -> Int Source # | |
(CountAtoms f, CountAtoms g) => CountAtoms (f :*: g) Source # | |
Defined in Generics.MultiRec.Read countatoms :: (f :*: g) r ix -> Int Source # |
Generic read
class HReadPrec (phi :: * -> *) (f :: (* -> *) -> * -> *) where Source #
hreader :: forall ix. phi ix -> (forall ix1. phi ix1 -> ReadPrec (I0 ix1)) -> ReadPrec (f I0 ix) Source #
Instances
HReadPrec phi U Source # | |
El phi xi => HReadPrec phi (I xi) Source # | |
Read a => HReadPrec phi (K a) Source # | |
(Constructor c, CountAtoms (f :*: g), HReadPrec phi f, HReadPrec phi g) => HReadPrec phi (C c (f :*: g)) Source # | |
(Constructor c, HReadPrec phi (f :.: g)) => HReadPrec phi (C c (f :.: g)) Source # | |
(Constructor c, HReadPrec phi (K a)) => HReadPrec phi (C c (K a)) Source # | |
(Constructor c, HReadPrec phi (I xi)) => HReadPrec phi (C c (I xi)) Source # | |
Constructor c => HReadPrec phi (C c U) Source # | |
(Read1 f, HReadPrec phi g) => HReadPrec phi (f :.: g) Source # | |
(HReadPrec phi f, EqS phi, El phi ix) => HReadPrec phi (f :>: ix) Source # | |
(HReadPrec phi f, HReadPrec phi g) => HReadPrec phi (f :*: g) Source # | |
(HReadPrec phi f, HReadPrec phi g) => HReadPrec phi (f :+: g) Source # | |