Idris2/tests/idris2/reg044/Methods.idr
Tim Engler 05f28724ed
[ fix #1579 ] Nat hack for comparison operators (#1580)
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2021-06-28 16:48:08 +01:00

22 lines
347 B
Idris

data Foo = A | B | C
Eq Foo where
A == A = True
B == B = True
C == C = True
_ == _ = False
interface Read a where
readPrefix : String -> Maybe (a, String)
read : String -> Maybe a
read str = case readPrefix str of
Just (a, "") => pure a
Nothing => Nothing
Read Foo where
read "A" = A
read "B" = B
read "C" = C