4import Control.Monad.Eff (Eff)
5import Control.Monad.Eff.Console (CONSOLE, log, logShow)
6import Data.Generic.Rep (class Generic)
7import Data.Generic.Rep.Eq (genericEq)
11derive instance genericX :: Generic (X a) _
13instance eqX :: Eq a => Eq (X a) where
14 eq xs ys = genericEq xs ys
16data Y a = Y | Z a (Y a)
18derive instance genericY :: Generic (Y a) _
20instance eqY :: Eq a => Eq (Y a) where
21 eq xs ys = genericEq xs ys
25derive instance genericZ :: Generic Z _
27instance eqZ :: Eq Z where
28 eq x y = genericEq x y
32newtype W = W { x :: Int, y :: MyString }
34derive instance genericW :: Generic W _
36instance eqW :: Eq W where
37 eq x y = genericEq x y
39data V = V { x :: Int } { x :: Int }
41derive instance genericV :: Generic V _
43instance eqV :: Eq V where
44 eq x y = genericEq x y
46main :: Eff (console :: CONSOLE) Unit
50 logShow (Z 1 Y == Z 1 Y)
52 logShow (Y == Y :: Y Z)
53 logShow (W { x: 0, y: "A" } == W { x: 0, y: "A" })
54 logShow (V { x: 0 } { x: 0 } == V { x: 0 } { x: 0 })
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