prettyprinter-combinators-0.1: Some useful combinators for the prettyprinter package
Copyright(c) Sergey Vinokurov 2018
LicenseApache-2.0 (see LICENSE)
Maintainerserg.foo@gmail.com
Safe HaskellNone
LanguageHaskell2010

Prettyprinter.Generics

Description

 
Synopsis

Documentation

ppGeneric :: (Generic a, GPretty (Rep a)) => a -> Doc ann Source #

Prettyprint using Data instance.

>>> :{
test = Test
  { testSet         = Just $ Set.fromList [1..3]
  , testMap         =
      Map.fromList [("foo", Set.fromList [1.5]), ("foo", Set.fromList [2.5, 3, 4])]
  , testIntSet      = IntSet.fromList [1, 2, 4, 5, 7]
  , testIntMap      = IntMap.fromList $ zip [1..] ["3", "2foo", "11"]
  , testInt         = 42
  , testComplexMap  = Map.fromList
      [ ( Nothing
        , IntMap.fromList $ zip [0..] $ map Set.fromList
            [ ["foo", "bar"]
            , ["baz"]
            , ["quux", "frob"]
            ]
        )
      , ( Just (Set.fromList [1])
        , IntMap.fromList $ zip [0..] $ map Set.fromList
            [ ["quux"]
            , ["fizz", "buzz"]
            ]
        )
      , ( Just (Set.fromList [3, 4])
        , IntMap.fromList $ zip [0..] $ map Set.fromList
            [ ["quux", "5"]
            , []
            , ["fizz", "buzz"]
            ]
        )
      ]
  , testComplexMap2 =
      Map.singleton
        (Just (Set.fromList [1..5]))
        (Map.fromList
           [ (NonEmpty.fromList [1, 2],  Vector.fromList ["foo", "bar", "baz"])
           , (NonEmpty.fromList [3],     Vector.fromList ["quux"])
           , (NonEmpty.fromList [4..10], Vector.fromList ["must", "put", "something", "in", "here"])
           ])
  }
:}
>>> ppGeneric test
Test
  { testSet         -> Just ({1, 2, 3})
  , testMap         -> {foo -> {2.5, 3.0, 4.0}}
  , testIntSet      -> {1, 2, 4, 5, 7}
  , testIntMap      -> {1 -> 3, 2 -> 2foo, 3 -> 11}
  , testInt         -> 42
  , testComplexMap  ->
      { Nothing -> {0 -> {bar, foo}, 1 -> {baz}, 2 -> {frob, quux}}
      , Just ({1}) -> {0 -> {quux}, 1 -> {buzz, fizz}}
      , Just ({3, 4}) -> {0 -> {5, quux}, 1 -> {}, 2 -> {buzz, fizz}}
      }
  , testComplexMap2 ->
      { Just ({1, 2, 3, 4, 5}) ->
          { [1, 2] -> [foo, bar, baz]
          , [3] -> [quux]
          , [4, 5, 6, 7, 8, 9, 10] -> [must, put, something, in, here]
          } }
  }

class PPGenericOverride a where Source #

A class to override Pretty when calling ppGeneric without introducing orphans for standard types.

Methods

ppGenericOverride :: a -> MetaDoc ann Source #

Instances

Instances details
PPGenericOverride Bool Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Bool -> MetaDoc ann Source #

PPGenericOverride Char Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Char -> MetaDoc ann Source #

PPGenericOverride Double Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Double -> MetaDoc ann Source #

PPGenericOverride Float Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Float -> MetaDoc ann Source #

PPGenericOverride Int Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Int -> MetaDoc ann Source #

PPGenericOverride Int8 Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Int8 -> MetaDoc ann Source #

PPGenericOverride Int16 Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Int16 -> MetaDoc ann Source #

PPGenericOverride Int32 Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Int32 -> MetaDoc ann Source #

PPGenericOverride Int64 Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Int64 -> MetaDoc ann Source #

PPGenericOverride Integer Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Integer -> MetaDoc ann Source #

PPGenericOverride Natural Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Natural -> MetaDoc ann Source #

PPGenericOverride Word Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Word -> MetaDoc ann Source #

PPGenericOverride Word8 Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Word8 -> MetaDoc ann Source #

PPGenericOverride Word16 Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Word16 -> MetaDoc ann Source #

PPGenericOverride Word32 Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Word32 -> MetaDoc ann Source #

PPGenericOverride Word64 Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Word64 -> MetaDoc ann Source #

PPGenericOverride CallStack Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: CallStack -> MetaDoc ann Source #

PPGenericOverride Exp Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Exp -> MetaDoc ann Source #

PPGenericOverride Match Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Match -> MetaDoc ann Source #

PPGenericOverride Clause Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Clause -> MetaDoc ann Source #

PPGenericOverride Pat Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Pat -> MetaDoc ann Source #

PPGenericOverride Type Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Type -> MetaDoc ann Source #

PPGenericOverride Dec Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Dec -> MetaDoc ann Source #

PPGenericOverride Name Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Name -> MetaDoc ann Source #

PPGenericOverride FunDep Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: FunDep -> MetaDoc ann Source #

PPGenericOverride InjectivityAnn Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: InjectivityAnn -> MetaDoc ann Source #

PPGenericOverride Overlap Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Overlap -> MetaDoc ann Source #

PPGenericOverride () Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: () -> MetaDoc ann Source #

Pretty a => PPGenericOverride a Source #

Fall back to standard Pretty instance when no override is available.

Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: a -> MetaDoc ann Source #

PPGenericOverride String Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: String -> MetaDoc ann Source #

PPGenericOverride ShortByteString Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: ShortByteString -> MetaDoc ann Source #

PPGenericOverride ByteString Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: ByteString -> MetaDoc ann Source #

PPGenericOverride ByteString Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: ByteString -> MetaDoc ann Source #

PPGenericOverride IntSet Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: IntSet -> MetaDoc ann Source #

PPGenericOverride Text Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Text -> MetaDoc ann Source #

PPGenericOverride Text Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Text -> MetaDoc ann Source #

PPGenericOverride ModName Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: ModName -> MetaDoc ann Source #

PPGenericOverride PkgName Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: PkgName -> MetaDoc ann Source #

PPGenericOverride OccName Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: OccName -> MetaDoc ann Source #

PPGenericOverride NameFlavour Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: NameFlavour -> MetaDoc ann Source #

PPGenericOverride NameSpace Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: NameSpace -> MetaDoc ann Source #

PPGenericOverride Info Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Info -> MetaDoc ann Source #

PPGenericOverride Fixity Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Fixity -> MetaDoc ann Source #

PPGenericOverride FixityDirection Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: FixityDirection -> MetaDoc ann Source #

PPGenericOverride Lit Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Lit -> MetaDoc ann Source #

PPGenericOverride Bytes Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Bytes -> MetaDoc ann Source #

PPGenericOverride Body Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Body -> MetaDoc ann Source #

PPGenericOverride Guard Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Guard -> MetaDoc ann Source #

PPGenericOverride Stmt Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Stmt -> MetaDoc ann Source #

PPGenericOverride Range Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Range -> MetaDoc ann Source #

PPGenericOverride DerivClause Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: DerivClause -> MetaDoc ann Source #

PPGenericOverride DerivStrategy Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: DerivStrategy -> MetaDoc ann Source #

PPGenericOverride TypeFamilyHead Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: TypeFamilyHead -> MetaDoc ann Source #

PPGenericOverride TySynEqn Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: TySynEqn -> MetaDoc ann Source #

PPGenericOverride Foreign Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Foreign -> MetaDoc ann Source #

PPGenericOverride Callconv Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Callconv -> MetaDoc ann Source #

PPGenericOverride Safety Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Safety -> MetaDoc ann Source #

PPGenericOverride Pragma Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Pragma -> MetaDoc ann Source #

PPGenericOverride Inline Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Inline -> MetaDoc ann Source #

PPGenericOverride RuleMatch Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: RuleMatch -> MetaDoc ann Source #

PPGenericOverride Phases Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Phases -> MetaDoc ann Source #

PPGenericOverride RuleBndr Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: RuleBndr -> MetaDoc ann Source #

PPGenericOverride AnnTarget Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: AnnTarget -> MetaDoc ann Source #

PPGenericOverride SourceUnpackedness Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: SourceUnpackedness -> MetaDoc ann Source #

PPGenericOverride SourceStrictness Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: SourceStrictness -> MetaDoc ann Source #

PPGenericOverride Con Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Con -> MetaDoc ann Source #

PPGenericOverride Bang Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Bang -> MetaDoc ann Source #

PPGenericOverride PatSynDir Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: PatSynDir -> MetaDoc ann Source #

PPGenericOverride PatSynArgs Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: PatSynArgs -> MetaDoc ann Source #

PPGenericOverride TyVarBndr Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: TyVarBndr -> MetaDoc ann Source #

PPGenericOverride FamilyResultSig Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: FamilyResultSig -> MetaDoc ann Source #

PPGenericOverride TyLit Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: TyLit -> MetaDoc ann Source #

PPGenericOverride Role Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Role -> MetaDoc ann Source #

(PPGenericOverride k, PPGenericOverride v) => PPGenericOverride [(k, v)] Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: [(k, v)] -> MetaDoc ann Source #

PPGenericOverride v => PPGenericOverride [v] Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: [v] -> MetaDoc ann Source #

PPGenericOverride v => PPGenericOverride (Maybe v) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Maybe v -> MetaDoc ann Source #

PPGenericOverride a => PPGenericOverride (Ratio a) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Ratio a -> MetaDoc ann Source #

PPGenericOverride (ForeignPtr a) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: ForeignPtr a -> MetaDoc ann Source #

PPGenericOverride k => PPGenericOverride (NonEmpty k) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: NonEmpty k -> MetaDoc ann Source #

PPGenericOverride v => PPGenericOverride (IntMap v) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: IntMap v -> MetaDoc ann Source #

PPGenericOverride v => PPGenericOverride (Set v) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Set v -> MetaDoc ann Source #

PPGenericOverride (Doc Void) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Doc Void -> MetaDoc ann Source #

PPGenericOverride v => PPGenericOverride (HashSet v) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: HashSet v -> MetaDoc ann Source #

PPGenericOverride v => PPGenericOverride (Vector v) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Vector v -> MetaDoc ann Source #

(PPGenericOverride a, PPGenericOverride b) => PPGenericOverride (a, b) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: (a, b) -> MetaDoc ann Source #

(PPGenericOverride k, PPGenericOverride v) => PPGenericOverride (Bimap k v) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Bimap k v -> MetaDoc ann Source #

(PPGenericOverride k, PPGenericOverride v) => PPGenericOverride (Map k v) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Map k v -> MetaDoc ann Source #

(PPGenericOverride k, PPGenericOverride v) => PPGenericOverride (HashMap k v) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: HashMap k v -> MetaDoc ann Source #

(PPGenericOverride a, PPGenericOverride b, PPGenericOverride c) => PPGenericOverride (a, b, c) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: (a, b, c) -> MetaDoc ann Source #

PPGenericOverride (f (g a)) => PPGenericOverride (Compose f g a) Source # 
Instance details

Defined in Prettyprinter.Generics

Methods

ppGenericOverride :: Compose f g a -> MetaDoc ann Source #

class Pretty a where #

Overloaded conversion to Doc.

Laws:

  1. output should be pretty. :-)

Minimal complete definition

pretty

Methods

pretty :: a -> Doc ann #

>>> pretty 1 <+> pretty "hello" <+> pretty 1.234
1 hello 1.234

prettyList :: [a] -> Doc ann #

prettyList is only used to define the instance Pretty a => Pretty [a]. In normal circumstances only the pretty function is used.

>>> prettyList [1, 23, 456]
[1, 23, 456]

Instances

Instances details
Pretty Bool
>>> pretty True
True
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Bool -> Doc ann #

prettyList :: [Bool] -> Doc ann #

Pretty Char

Instead of (pretty 'n'), consider using line as a more readable alternative.

>>> pretty 'f' <> pretty 'o' <> pretty 'o'
foo
>>> pretty ("string" :: String)
string
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Char -> Doc ann #

prettyList :: [Char] -> Doc ann #

Pretty Double
>>> pretty (exp 1 :: Double)
2.71828182845904...
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Double -> Doc ann #

prettyList :: [Double] -> Doc ann #

Pretty Float
>>> pretty (pi :: Float)
3.1415927
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Float -> Doc ann #

prettyList :: [Float] -> Doc ann #

Pretty Int
>>> pretty (123 :: Int)
123
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Int -> Doc ann #

prettyList :: [Int] -> Doc ann #

Pretty Int8 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Int8 -> Doc ann #

prettyList :: [Int8] -> Doc ann #

Pretty Int16 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Int16 -> Doc ann #

prettyList :: [Int16] -> Doc ann #

Pretty Int32 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Int32 -> Doc ann #

prettyList :: [Int32] -> Doc ann #

Pretty Int64 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Int64 -> Doc ann #

prettyList :: [Int64] -> Doc ann #

Pretty Integer
>>> pretty (2^123 :: Integer)
10633823966279326983230456482242756608
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Integer -> Doc ann #

prettyList :: [Integer] -> Doc ann #

Pretty Natural 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Natural -> Doc ann #

prettyList :: [Natural] -> Doc ann #

Pretty Word 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Word -> Doc ann #

prettyList :: [Word] -> Doc ann #

Pretty Word8 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Word8 -> Doc ann #

prettyList :: [Word8] -> Doc ann #

Pretty Word16 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Word16 -> Doc ann #

prettyList :: [Word16] -> Doc ann #

Pretty Word32 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Word32 -> Doc ann #

prettyList :: [Word32] -> Doc ann #

Pretty Word64 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Word64 -> Doc ann #

prettyList :: [Word64] -> Doc ann #

Pretty ()
>>> pretty ()
()

The argument is not used:

>>> pretty (error "Strict?" :: ())
()
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: () -> Doc ann #

prettyList :: [()] -> Doc ann #

Pretty Void

Finding a good example for printing something that does not exist is hard, so here is an example of printing a list full of nothing.

>>> pretty ([] :: [Void])
[]
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Void -> Doc ann #

prettyList :: [Void] -> Doc ann #

Pretty Text

(lazy Text instance, identical to the strict version)

Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Text -> Doc ann #

prettyList :: [Text] -> Doc ann #

Pretty Text

Automatically converts all newlines to line.

>>> pretty ("hello\nworld" :: Text)
hello
world

Note that line can be undone by group:

>>> group (pretty ("hello\nworld" :: Text))
hello world

Manually use hardline if you definitely want newlines.

Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Text -> Doc ann #

prettyList :: [Text] -> Doc ann #

Pretty a => Pretty [a]
>>> pretty [1,2,3]
[1, 2, 3]
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: [a] -> Doc ann #

prettyList :: [[a]] -> Doc ann #

Pretty a => Pretty (Maybe a)

Ignore Nothings, print Just contents.

>>> pretty (Just True)
True
>>> braces (pretty (Nothing :: Maybe Bool))
{}
>>> pretty [Just 1, Nothing, Just 3, Nothing]
[1, 3]
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Maybe a -> Doc ann #

prettyList :: [Maybe a] -> Doc ann #

Pretty a => Pretty (Identity a)
>>> pretty (Identity 1)
1
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Identity a -> Doc ann #

prettyList :: [Identity a] -> Doc ann #

Pretty a => Pretty (NonEmpty a) 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: NonEmpty a -> Doc ann #

prettyList :: [NonEmpty a] -> Doc ann #

(Pretty a1, Pretty a2) => Pretty (a1, a2)
>>> pretty (123, "hello")
(123, hello)
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: (a1, a2) -> Doc ann #

prettyList :: [(a1, a2)] -> Doc ann #

(Pretty k, Pretty v) => Pretty (MapEntry k v) Source # 
Instance details

Defined in Prettyprinter.Combinators

Methods

pretty :: MapEntry k v -> Doc ann #

prettyList :: [MapEntry k v] -> Doc ann #

(Pretty a1, Pretty a2, Pretty a3) => Pretty (a1, a2, a3)
>>> pretty (123, "hello", False)
(123, hello, False)
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: (a1, a2, a3) -> Doc ann #

prettyList :: [(a1, a2, a3)] -> Doc ann #

Pretty a => Pretty (Const a b) 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Const a b -> Doc ann #

prettyList :: [Const a b] -> Doc ann #

class Generic a #

Representable types of kind *. This class is derivable in GHC with the DeriveGeneric flag on.

A Generic instance must satisfy the following laws:

from . toid
to . fromid

Minimal complete definition

from, to

Instances

Instances details
Generic Bool

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep Bool :: Type -> Type #

Methods

from :: Bool -> Rep Bool x #

to :: Rep Bool x -> Bool #

Generic Ordering

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep Ordering :: Type -> Type #

Methods

from :: Ordering -> Rep Ordering x #

to :: Rep Ordering x -> Ordering #

Generic Exp 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Exp :: Type -> Type #

Methods

from :: Exp -> Rep Exp x #

to :: Rep Exp x -> Exp #

Generic Match 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Match :: Type -> Type #

Methods

from :: Match -> Rep Match x #

to :: Rep Match x -> Match #

Generic Clause 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Clause :: Type -> Type #

Methods

from :: Clause -> Rep Clause x #

to :: Rep Clause x -> Clause #

Generic Pat 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Pat :: Type -> Type #

Methods

from :: Pat -> Rep Pat x #

to :: Rep Pat x -> Pat #

Generic Type 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Type :: Type -> Type #

Methods

from :: Type -> Rep Type x #

to :: Rep Type x -> Type #

Generic Dec 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Dec :: Type -> Type #

Methods

from :: Dec -> Rep Dec x #

to :: Rep Dec x -> Dec #

Generic Name 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Name :: Type -> Type #

Methods

from :: Name -> Rep Name x #

to :: Rep Name x -> Name #

Generic FunDep 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep FunDep :: Type -> Type #

Methods

from :: FunDep -> Rep FunDep x #

to :: Rep FunDep x -> FunDep #

Generic InjectivityAnn 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep InjectivityAnn :: Type -> Type #

Generic Overlap 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Overlap :: Type -> Type #

Methods

from :: Overlap -> Rep Overlap x #

to :: Rep Overlap x -> Overlap #

Generic ()

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep () :: Type -> Type #

Methods

from :: () -> Rep () x #

to :: Rep () x -> () #

Generic Void

Since: base-4.8.0.0

Instance details

Defined in Data.Void

Associated Types

type Rep Void :: Type -> Type #

Methods

from :: Void -> Rep Void x #

to :: Rep Void x -> Void #

Generic Version

Since: base-4.9.0.0

Instance details

Defined in Data.Version

Associated Types

type Rep Version :: Type -> Type #

Methods

from :: Version -> Rep Version x #

to :: Rep Version x -> Version #

Generic ExitCode 
Instance details

Defined in GHC.IO.Exception

Associated Types

type Rep ExitCode :: Type -> Type #

Methods

from :: ExitCode -> Rep ExitCode x #

to :: Rep ExitCode x -> ExitCode #

Generic All

Since: base-4.7.0.0

Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep All :: Type -> Type #

Methods

from :: All -> Rep All x #

to :: Rep All x -> All #

Generic Any

Since: base-4.7.0.0

Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep Any :: Type -> Type #

Methods

from :: Any -> Rep Any x #

to :: Rep Any x -> Any #

Generic Fixity

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep Fixity :: Type -> Type #

Methods

from :: Fixity -> Rep Fixity x #

to :: Rep Fixity x -> Fixity #

Generic Associativity

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep Associativity :: Type -> Type #

Generic SourceUnpackedness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep SourceUnpackedness :: Type -> Type #

Generic SourceStrictness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep SourceStrictness :: Type -> Type #

Generic DecidedStrictness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep DecidedStrictness :: Type -> Type #

Generic Extension 
Instance details

Defined in GHC.LanguageExtensions.Type

Associated Types

type Rep Extension :: Type -> Type #

Generic ForeignSrcLang 
Instance details

Defined in GHC.ForeignSrcLang.Type

Associated Types

type Rep ForeignSrcLang :: Type -> Type #

Generic Doc 
Instance details

Defined in Text.PrettyPrint.HughesPJ

Associated Types

type Rep Doc :: Type -> Type #

Methods

from :: Doc -> Rep Doc x #

to :: Rep Doc x -> Doc #

Generic TextDetails 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Associated Types

type Rep TextDetails :: Type -> Type #

Generic Style 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Associated Types

type Rep Style :: Type -> Type #

Methods

from :: Style -> Rep Style x #

to :: Rep Style x -> Style #

Generic Mode 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Associated Types

type Rep Mode :: Type -> Type #

Methods

from :: Mode -> Rep Mode x #

to :: Rep Mode x -> Mode #

Generic ModName 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep ModName :: Type -> Type #

Methods

from :: ModName -> Rep ModName x #

to :: Rep ModName x -> ModName #

Generic PkgName 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep PkgName :: Type -> Type #

Methods

from :: PkgName -> Rep PkgName x #

to :: Rep PkgName x -> PkgName #

Generic Module 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Module :: Type -> Type #

Methods

from :: Module -> Rep Module x #

to :: Rep Module x -> Module #

Generic OccName 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep OccName :: Type -> Type #

Methods

from :: OccName -> Rep OccName x #

to :: Rep OccName x -> OccName #

Generic NameFlavour 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep NameFlavour :: Type -> Type #

Generic NameSpace 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep NameSpace :: Type -> Type #

Generic Loc 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Loc :: Type -> Type #

Methods

from :: Loc -> Rep Loc x #

to :: Rep Loc x -> Loc #

Generic Info 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Info :: Type -> Type #

Methods

from :: Info -> Rep Info x #

to :: Rep Info x -> Info #

Generic ModuleInfo 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep ModuleInfo :: Type -> Type #

Generic Fixity 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Fixity :: Type -> Type #

Methods

from :: Fixity -> Rep Fixity x #

to :: Rep Fixity x -> Fixity #

Generic FixityDirection 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep FixityDirection :: Type -> Type #

Generic Lit 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Lit :: Type -> Type #

Methods

from :: Lit -> Rep Lit x #

to :: Rep Lit x -> Lit #

Generic Bytes 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Bytes :: Type -> Type #

Methods

from :: Bytes -> Rep Bytes x #

to :: Rep Bytes x -> Bytes #

Generic Body 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Body :: Type -> Type #

Methods

from :: Body -> Rep Body x #

to :: Rep Body x -> Body #

Generic Guard 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Guard :: Type -> Type #

Methods

from :: Guard -> Rep Guard x #

to :: Rep Guard x -> Guard #

Generic Stmt 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Stmt :: Type -> Type #

Methods

from :: Stmt -> Rep Stmt x #

to :: Rep Stmt x -> Stmt #

Generic Range 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Range :: Type -> Type #

Methods

from :: Range -> Rep Range x #

to :: Rep Range x -> Range #

Generic DerivClause 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep DerivClause :: Type -> Type #

Generic DerivStrategy 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep DerivStrategy :: Type -> Type #

Generic TypeFamilyHead 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep TypeFamilyHead :: Type -> Type #

Generic TySynEqn 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep TySynEqn :: Type -> Type #

Methods

from :: TySynEqn -> Rep TySynEqn x #

to :: Rep TySynEqn x -> TySynEqn #

Generic Foreign 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Foreign :: Type -> Type #

Methods

from :: Foreign -> Rep Foreign x #

to :: Rep Foreign x -> Foreign #

Generic Callconv 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Callconv :: Type -> Type #

Methods

from :: Callconv -> Rep Callconv x #

to :: Rep Callconv x -> Callconv #

Generic Safety 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Safety :: Type -> Type #

Methods

from :: Safety -> Rep Safety x #

to :: Rep Safety x -> Safety #

Generic Pragma 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Pragma :: Type -> Type #

Methods

from :: Pragma -> Rep Pragma x #

to :: Rep Pragma x -> Pragma #

Generic Inline 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Inline :: Type -> Type #

Methods

from :: Inline -> Rep Inline x #

to :: Rep Inline x -> Inline #

Generic RuleMatch 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep RuleMatch :: Type -> Type #

Generic Phases 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Phases :: Type -> Type #

Methods

from :: Phases -> Rep Phases x #

to :: Rep Phases x -> Phases #

Generic RuleBndr 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep RuleBndr :: Type -> Type #

Methods

from :: RuleBndr -> Rep RuleBndr x #

to :: Rep RuleBndr x -> RuleBndr #

Generic AnnTarget 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep AnnTarget :: Type -> Type #

Generic SourceUnpackedness 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep SourceUnpackedness :: Type -> Type #

Generic SourceStrictness 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep SourceStrictness :: Type -> Type #

Generic DecidedStrictness 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep DecidedStrictness :: Type -> Type #

Generic Con 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Con :: Type -> Type #

Methods

from :: Con -> Rep Con x #

to :: Rep Con x -> Con #

Generic Bang 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Bang :: Type -> Type #

Methods

from :: Bang -> Rep Bang x #

to :: Rep Bang x -> Bang #

Generic PatSynDir 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep PatSynDir :: Type -> Type #

Generic PatSynArgs 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep PatSynArgs :: Type -> Type #

Generic TyVarBndr 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep TyVarBndr :: Type -> Type #

Generic FamilyResultSig 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep FamilyResultSig :: Type -> Type #

Generic TyLit 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep TyLit :: Type -> Type #

Methods

from :: TyLit -> Rep TyLit x #

to :: Rep TyLit x -> TyLit #

Generic Role 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Role :: Type -> Type #

Methods

from :: Role -> Rep Role x #

to :: Rep Role x -> Role #

Generic AnnLookup 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep AnnLookup :: Type -> Type #

Generic [a]

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep [a] :: Type -> Type #

Methods

from :: [a] -> Rep [a] x #

to :: Rep [a] x -> [a] #

Generic (Maybe a)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (Maybe a) :: Type -> Type #

Methods

from :: Maybe a -> Rep (Maybe a) x #

to :: Rep (Maybe a) x -> Maybe a #

Generic (Par1 p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (Par1 p) :: Type -> Type #

Methods

from :: Par1 p -> Rep (Par1 p) x #

to :: Rep (Par1 p) x -> Par1 p #

Generic (Min a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Min a) :: Type -> Type #

Methods

from :: Min a -> Rep (Min a) x #

to :: Rep (Min a) x -> Min a #

Generic (Max a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Max a) :: Type -> Type #

Methods

from :: Max a -> Rep (Max a) x #

to :: Rep (Max a) x -> Max a #

Generic (First a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (First a) :: Type -> Type #

Methods

from :: First a -> Rep (First a) x #

to :: Rep (First a) x -> First a #

Generic (Last a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Last a) :: Type -> Type #

Methods

from :: Last a -> Rep (Last a) x #

to :: Rep (Last a) x -> Last a #

Generic (WrappedMonoid m)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (WrappedMonoid m) :: Type -> Type #

Generic (Option a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Option a) :: Type -> Type #

Methods

from :: Option a -> Rep (Option a) x #

to :: Rep (Option a) x -> Option a #

Generic (ZipList a)

Since: base-4.7.0.0

Instance details

Defined in Control.Applicative

Associated Types

type Rep (ZipList a) :: Type -> Type #

Methods

from :: ZipList a -> Rep (ZipList a) x #

to :: Rep (ZipList a) x -> ZipList a #

Generic (Identity a)

Since: base-4.8.0.0

Instance details

Defined in Data.Functor.Identity

Associated Types

type Rep (Identity a) :: Type -> Type #

Methods

from :: Identity a -> Rep (Identity a) x #

to :: Rep (Identity a) x -> Identity a #

Generic (First a)

Since: base-4.7.0.0

Instance details

Defined in Data.Monoid

Associated Types

type Rep (First a) :: Type -> Type #

Methods

from :: First a -> Rep (First a) x #

to :: Rep (First a) x -> First a #

Generic (Last a)

Since: base-4.7.0.0

Instance details

Defined in Data.Monoid

Associated Types

type Rep (Last a) :: Type -> Type #

Methods

from :: Last a -> Rep (Last a) x #

to :: Rep (Last a) x -> Last a #

Generic (Dual a)

Since: base-4.7.0.0

Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep (Dual a) :: Type -> Type #

Methods

from :: Dual a -> Rep (Dual a) x #

to :: Rep (Dual a) x -> Dual a #

Generic (Endo a)

Since: base-4.7.0.0

Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep (Endo a) :: Type -> Type #

Methods

from :: Endo a -> Rep (Endo a) x #

to :: Rep (Endo a) x -> Endo a #

Generic (Sum a)

Since: base-4.7.0.0

Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep (Sum a) :: Type -> Type #

Methods

from :: Sum a -> Rep (Sum a) x #

to :: Rep (Sum a) x -> Sum a #

Generic (Product a)

Since: base-4.7.0.0

Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep (Product a) :: Type -> Type #

Methods

from :: Product a -> Rep (Product a) x #

to :: Rep (Product a) x -> Product a #

Generic (Down a)

Since: base-4.12.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (Down a) :: Type -> Type #

Methods

from :: Down a -> Rep (Down a) x #

to :: Rep (Down a) x -> Down a #

Generic (NonEmpty a)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (NonEmpty a) :: Type -> Type #

Methods

from :: NonEmpty a -> Rep (NonEmpty a) x #

to :: Rep (NonEmpty a) x -> NonEmpty a #

Generic (Tree a)

Since: containers-0.5.8

Instance details

Defined in Data.Tree

Associated Types

type Rep (Tree a) :: Type -> Type #

Methods

from :: Tree a -> Rep (Tree a) x #

to :: Rep (Tree a) x -> Tree a #

Generic (FingerTree a)

Since: containers-0.6.1

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (FingerTree a) :: Type -> Type #

Methods

from :: FingerTree a -> Rep (FingerTree a) x #

to :: Rep (FingerTree a) x -> FingerTree a #

Generic (Digit a)

Since: containers-0.6.1

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (Digit a) :: Type -> Type #

Methods

from :: Digit a -> Rep (Digit a) x #

to :: Rep (Digit a) x -> Digit a #

Generic (Node a)

Since: containers-0.6.1

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (Node a) :: Type -> Type #

Methods

from :: Node a -> Rep (Node a) x #

to :: Rep (Node a) x -> Node a #

Generic (Elem a)

Since: containers-0.6.1

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (Elem a) :: Type -> Type #

Methods

from :: Elem a -> Rep (Elem a) x #

to :: Rep (Elem a) x -> Elem a #

Generic (ViewL a)

Since: containers-0.5.8

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (ViewL a) :: Type -> Type #

Methods

from :: ViewL a -> Rep (ViewL a) x #

to :: Rep (ViewL a) x -> ViewL a #

Generic (ViewR a)

Since: containers-0.5.8

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (ViewR a) :: Type -> Type #

Methods

from :: ViewR a -> Rep (ViewR a) x #

to :: Rep (ViewR a) x -> ViewR a #

Generic (Doc a) 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Associated Types

type Rep (Doc a) :: Type -> Type #

Methods

from :: Doc a -> Rep (Doc a) x #

to :: Rep (Doc a) x -> Doc a #

Generic (Doc ann) 
Instance details

Defined in Prettyprinter.Internal

Associated Types

type Rep (Doc ann) :: Type -> Type #

Methods

from :: Doc ann -> Rep (Doc ann) x #

to :: Rep (Doc ann) x -> Doc ann #

Generic (SimpleDocStream ann) 
Instance details

Defined in Prettyprinter.Internal

Associated Types

type Rep (SimpleDocStream ann) :: Type -> Type #

Methods

from :: SimpleDocStream ann -> Rep (SimpleDocStream ann) x #

to :: Rep (SimpleDocStream ann) x -> SimpleDocStream ann #

Generic (Either a b)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (Either a b) :: Type -> Type #

Methods

from :: Either a b -> Rep (Either a b) x #

to :: Rep (Either a b) x -> Either a b #

Generic (V1 p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (V1 p) :: Type -> Type #

Methods

from :: V1 p -> Rep (V1 p) x #

to :: Rep (V1 p) x -> V1 p #

Generic (U1 p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (U1 p) :: Type -> Type #

Methods

from :: U1 p -> Rep (U1 p) x #

to :: Rep (U1 p) x -> U1 p #

Generic (a, b)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b) :: Type -> Type #

Methods

from :: (a, b) -> Rep (a, b) x #

to :: Rep (a, b) x -> (a, b) #

Generic (Arg a b)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Arg a b) :: Type -> Type #

Methods

from :: Arg a b -> Rep (Arg a b) x #

to :: Rep (Arg a b) x -> Arg a b #

Generic (WrappedMonad m a)

Since: base-4.7.0.0

Instance details

Defined in Control.Applicative

Associated Types

type Rep (WrappedMonad m a) :: Type -> Type #

Methods

from :: WrappedMonad m a -> Rep (WrappedMonad m a) x #

to :: Rep (WrappedMonad m a) x -> WrappedMonad m a #

Generic (Proxy t)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (Proxy t) :: Type -> Type #

Methods

from :: Proxy t -> Rep (Proxy t) x #

to :: Rep (Proxy t) x -> Proxy t #

Generic (Bimap a b) 
Instance details

Defined in Data.Bimap

Associated Types

type Rep (Bimap a b) :: Type -> Type #

Methods

from :: Bimap a b -> Rep (Bimap a b) x #

to :: Rep (Bimap a b) x -> Bimap a b #

Generic (Rec1 f p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (Rec1 f p) :: Type -> Type #

Methods

from :: Rec1 f p -> Rep (Rec1 f p) x #

to :: Rep (Rec1 f p) x -> Rec1 f p #

Generic (URec (Ptr ()) p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec (Ptr ()) p) :: Type -> Type #

Methods

from :: URec (Ptr ()) p -> Rep (URec (Ptr ()) p) x #

to :: Rep (URec (Ptr ()) p) x -> URec (Ptr ()) p #

Generic (URec Char p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Char p) :: Type -> Type #

Methods

from :: URec Char p -> Rep (URec Char p) x #

to :: Rep (URec Char p) x -> URec Char p #

Generic (URec Double p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Double p) :: Type -> Type #

Methods

from :: URec Double p -> Rep (URec Double p) x #

to :: Rep (URec Double p) x -> URec Double p #

Generic (URec Float p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Float p) :: Type -> Type #

Methods

from :: URec Float p -> Rep (URec Float p) x #

to :: Rep (URec Float p) x -> URec Float p #

Generic (URec Int p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Int p) :: Type -> Type #

Methods

from :: URec Int p -> Rep (URec Int p) x #

to :: Rep (URec Int p) x -> URec Int p #

Generic (URec Word p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Word p) :: Type -> Type #

Methods

from :: URec Word p -> Rep (URec Word p) x #

to :: Rep (URec Word p) x -> URec Word p #

Generic (a, b, c)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c) :: Type -> Type #

Methods

from :: (a, b, c) -> Rep (a, b, c) x #

to :: Rep (a, b, c) x -> (a, b, c) #

Generic (WrappedArrow a b c)

Since: base-4.7.0.0

Instance details

Defined in Control.Applicative

Associated Types

type Rep (WrappedArrow a b c) :: Type -> Type #

Methods

from :: WrappedArrow a b c -> Rep (WrappedArrow a b c) x #

to :: Rep (WrappedArrow a b c) x -> WrappedArrow a b c #

Generic (Const a b)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Associated Types

type Rep (Const a b) :: Type -> Type #

Methods

from :: Const a b -> Rep (Const a b) x #

to :: Rep (Const a b) x -> Const a b #

Generic (Ap f a)

Since: base-4.12.0.0

Instance details

Defined in Data.Monoid

Associated Types

type Rep (Ap f a) :: Type -> Type #

Methods

from :: Ap f a -> Rep (Ap f a) x #

to :: Rep (Ap f a) x -> Ap f a #

Generic (Alt f a)

Since: base-4.8.0.0

Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep (Alt f a) :: Type -> Type #

Methods

from :: Alt f a -> Rep (Alt f a) x #

to :: Rep (Alt f a) x -> Alt f a #

Generic (K1 i c p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (K1 i c p) :: Type -> Type #

Methods

from :: K1 i c p -> Rep (K1 i c p) x #

to :: Rep (K1 i c p) x -> K1 i c p #

Generic ((f :+: g) p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep ((f :+: g) p) :: Type -> Type #

Methods

from :: (f :+: g) p -> Rep ((f :+: g) p) x #

to :: Rep ((f :+: g) p) x -> (f :+: g) p #

Generic ((f :*: g) p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep ((f :*: g) p) :: Type -> Type #

Methods

from :: (f :*: g) p -> Rep ((f :*: g) p) x #

to :: Rep ((f :*: g) p) x -> (f :*: g) p #

Generic (a, b, c, d)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d) :: Type -> Type #

Methods

from :: (a, b, c, d) -> Rep (a, b, c, d) x #

to :: Rep (a, b, c, d) x -> (a, b, c, d) #

Generic (M1 i c f p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (M1 i c f p) :: Type -> Type #

Methods

from :: M1 i c f p -> Rep (M1 i c f p) x #

to :: Rep (M1 i c f p) x -> M1 i c f p #

Generic ((f :.: g) p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep ((f :.: g) p) :: Type -> Type #

Methods

from :: (f :.: g) p -> Rep ((f :.: g) p) x #

to :: Rep ((f :.: g) p) x -> (f :.: g) p #

Generic (a, b, c, d, e)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e) :: Type -> Type #

Methods

from :: (a, b, c, d, e) -> Rep (a, b, c, d, e) x #

to :: Rep (a, b, c, d, e) x -> (a, b, c, d, e) #

Generic (Compose f g a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Compose

Associated Types

type Rep (Compose f g a) :: Type -> Type #

Methods

from :: Compose f g a -> Rep (Compose f g a) x #

to :: Rep (Compose f g a) x -> Compose f g a #

Generic (a, b, c, d, e, f)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f) :: Type -> Type #

Methods

from :: (a, b, c, d, e, f) -> Rep (a, b, c, d, e, f) x #

to :: Rep (a, b, c, d, e, f) x -> (a, b, c, d, e, f) #

Generic (a, b, c, d, e, f, g)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g) :: Type -> Type #

Methods

from :: (a, b, c, d, e, f, g) -> Rep (a, b, c, d, e, f, g) x #

to :: Rep (a, b, c, d, e, f, g) x -> (a, b, c, d, e, f, g) #