Generic

Generic :: FPFormat
text Data.Text.Lazy.Builder.RealFloat
Use decimal notation for values between 0.1 and 9,999,999, and scientific notation otherwise.
type Generic c = forall a. Data a => a -> c a
syb Data.Generics.Aliases
The general scheme underlying generic functions assumed by gfoldl; there are isomorphisms such as GenericT = Generic T.
module Data.Generics
syb Data.Generics
"Scrap your boilerplate" --- Generic programming in Haskell See http://www.cs.uu.nl/wiki/GenericProgramming/SYB. To scrap your boilerplate it is sufficient to import the present module, which simply re-exports all themes of the Data.Generics library.
Generic' :: Generic c -> Generic' c
syb Data.Generics.Aliases
data Generic' c
syb Data.Generics.Aliases
Wrapped generic functions; recall: [Generic c] would be legal but [Generic' c] not.
type GenericB = forall a. Data a => a
syb Data.Generics.Aliases
Generic builders i.e., produce an "a".
type GenericM m = forall a. Data a => a -> m a
syb Data.Generics.Aliases
Generic monadic transformations, i.e., take an "a" and compute an "a"
newtype GenericM' m
syb Data.Generics.Aliases
package GenericPretty
package
GenericPretty is a Haskell library that supports automatic derivation of pretty printing functions on user defined data types. The form of generics used is based on that introduced in the paper: Magalhaes, Dijkstra, Jeuring, and Loh, A Generic Deriving Mechanism for Haskell, 3'rd ACM Symposium on Haskell, pp. 37-48, September 2010, http://dx.doi.org/10.1145/1863523.1863529. Changes from the original paper in the GHC implementation are described here: http://www.haskell.org/haskellwiki/GHC.Generics#Changes_from_the_paper. This package requires the use of the new GHC.Generics features http://www.haskell.org/haskellwiki/GHC.Generics, present from GHC 7.2. Use of these features is indicated by the DeriveGeneric pragma or the flag -XDeriveGeneric. Pretty printing produces values of type Text.PrettyPrint.Doc, using the Text.PrettyPrint library http://www.haskell.org/ghc/docs/latest/html/libraries/pretty-1.1.1.0/Text-PrettyPrint.html. The output provided is a pretty printed version of that provided by Prelude.show.  That is, rendering the document provided by this pretty printer yields an output identical to that of Prelude.show, except for extra whitespace. For information about the functions exported by the package please see the API linked further down this page. For examples of usage, both basic and more complex see the README file and the haskell source code files in the TestSuite folder, both included in the package. Finally for installation instructions also see the README file or this page: http://www.haskell.org/haskellwiki/Cabal/How_to_install_a_Cabal_package Version 1.2.1
type GenericQ r = forall a. Data a => a -> r
syb Data.Generics.Aliases
Generic queries of type "r", i.e., take any "a" and return an "r"
newtype GenericQ' r
syb Data.Generics.Aliases
type GenericR m = forall a. Data a => m a
syb Data.Generics.Aliases
Generic readers, say monadic builders, i.e., produce an "a" with the help of a monad "m".
type GenericT = forall a. Data a => a -> a
syb Data.Generics.Aliases
Generic transformations, i.e., take an "a" and return an "a"
newtype GenericT'
syb Data.Generics.Aliases
Other first-class polymorphic wrappers
genericDrop :: Integral i => i -> [a] -> [a]
base Data.List
The genericDrop function is an overloaded version of drop, which accepts any Integral value as the number of elements to drop.
genericIndex :: Integral a => [b] -> a -> b
base Data.List
The genericIndex function is an overloaded version of !!, which accepts any Integral value as the index.
genericLength :: Num i => [b] -> i
base Data.List
The genericLength function is an overloaded version of length. In particular, instead of returning an Int, it returns any type which is an instance of Num. It is, however, less efficient than length.
genericReplicate :: Integral i => i -> a -> [a]
base Data.List
The genericReplicate function is an overloaded version of replicate, which accepts any Integral value as the number of repetitions to make.
genericSplitAt :: Integral i => i -> [b] -> ([b], [b])
base Data.List
The genericSplitAt function is an overloaded version of splitAt, which accepts any Integral value as the position at which to split.
genericTake :: Integral i => i -> [a] -> [a]
base Data.List
The genericTake function is an overloaded version of take, which accepts any Integral value as the number of elements to take.

Show more results