on master help sign in
Better DecEq instances for primitives!
10410deEdwin Brady
libs/prelude/Decidable/Equality.idr+8−8
@@ -187,30 +187,30 @@ instance DecEq a => DecEq (Vect n a) where
187--------------------------------------------------------------------------------
187--------------------------------------------------------------------------------
188
188
189instance DecEq Int where
189instance DecEq Int where
190− decEq x y = if x == y then Yes (believe_me (x = x))
190+ decEq x y = if x == y then Yes (really_believe_me {a = x=x} {b = x=y} refl)
191− else No (believe_me _|_)
191+ else No (really_believe_me _|_)
192
192
193--------------------------------------------------------------------------------
193--------------------------------------------------------------------------------
194-- Char
194-- Char
195--------------------------------------------------------------------------------
195--------------------------------------------------------------------------------
196
196
197instance DecEq Char where
197instance DecEq Char where
198− decEq x y = if x == y then Yes (believe_me (x = x))
198+ decEq x y = if x == y then Yes (really_believe_me {a = x=x} {b = x=y} refl)
199− else No (believe_me _|_)
199+ else No (really_believe_me _|_)
200
200
201--------------------------------------------------------------------------------
201--------------------------------------------------------------------------------
202-- Integer
202-- Integer
203--------------------------------------------------------------------------------
203--------------------------------------------------------------------------------
204
204
205instance DecEq Integer where
205instance DecEq Integer where
206− decEq x y = if x == y then Yes (believe_me (x = x))
206+ decEq x y = if x == y then Yes (really_believe_me {a = x=x} {b = x=y} refl)
207− else No (believe_me _|_)
207+ else No (really_believe_me _|_)
208
208
209--------------------------------------------------------------------------------
209--------------------------------------------------------------------------------
210-- Float
210-- Float
211--------------------------------------------------------------------------------
211--------------------------------------------------------------------------------
212
212
213instance DecEq Float where
213instance DecEq Float where
214− decEq x y = if x == y then Yes (believe_me (x = x))
214+ decEq x y = if x == y then Yes (really_believe_me {a = x=x} {b = x=y} refl)
215− else No (believe_me _|_)
215+ else No (really_believe_me _|_)
216
216