mirror of
https://github.com/idris-lang/Idris2.git
synced 2024-12-18 16:51:51 +03:00
a972778eab
They don't all pass yet, for minor reasons. Coming shortly... Unfortunately the startup overhead for chez is really noticeable here!
25 lines
611 B
Idris
25 lines
611 B
Idris
showIfEq : (Eq a, Show a) => a -> a -> String
|
|
showIfEq x y = if x == y then show x else "Nope"
|
|
|
|
topeq : Eq a => a -> a -> Bool
|
|
topeq x y = x == y
|
|
|
|
data Foo = MkFoo | MkBar
|
|
|
|
-- Should only show the first interface search failure in the tuple
|
|
-- (Ideally it would keep going and find all the failures, but that is
|
|
-- hard to achieve and this way is better than displaying the whole
|
|
-- top level search when only part of it is relevant)
|
|
|
|
test : Int -> String
|
|
test x = showIfEq MkFoo MkBar
|
|
|
|
Eq Foo where
|
|
MkFoo == MkFoo = True
|
|
MkBar == MkBar = True
|
|
_ == _ = False
|
|
|
|
test2 : String
|
|
test2 = showIfEq MkFoo MkBar
|
|
|