1{-# language StandaloneKindSignatures #-}
2{-# language TypeFamilies #-}
4module Rel8.Generic.Reify
10import Data.Functor.Contravariant ( Contravariant, contramap )
11import Data.Kind ( Type )
12import Data.Void ( Void, absurd )
13import GHC.Generics ( Generic, Rep, from, to )
17type ARep :: (Type -> Type) -> Type
18newtype ARep rep = ARep (rep Void)
21instance (Contravariant rep, Functor rep) => Generic (ARep rep) where
22 type Rep (ARep rep) = rep
23 from (ARep a) = fmap absurd a
24 to = ARep . contramap absurd
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list