Skip to content

Commit 5689786

Browse files
authored
Merge pull request #1598 from gallais/show-void
[ fix ] missing Show implementations in libs
2 parents 0a0c41d + afd5595 commit 5689786

File tree

3 files changed

+10
-0
lines changed

3 files changed

+10
-0
lines changed

libs/base/Data/Fin.idr

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,11 @@ finToNat : Fin n -> Nat
6060
finToNat FZ = Z
6161
finToNat (FS k) = S $ finToNat k
6262

63+
64+
export
65+
Show (Fin n) where
66+
show = show . finToNat
67+
6368
||| `finToNat` is injective
6469
export
6570
finToNatInjective : (fm : Fin k) -> (fn : Fin k) -> (finToNat fm) = (finToNat fn) -> fm = fn

libs/prelude/Prelude/Show.idr

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,10 @@ Show Bool where
179179
show True = "True"
180180
show False = "False"
181181

182+
export
183+
Show Void where
184+
show v impossible
185+
182186
export
183187
Show () where
184188
show () = "()"

tests/idris2/docs001/expected

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ Main> Prelude.Show : Type -> Type
5151
Show String
5252
Show Nat
5353
Show Bool
54+
Show Void
5455
Show ()
5556
(Show a, Show b) => Show (a, b)
5657
(Show a, Show (p y)) => Show (DPair a p)

0 commit comments

Comments
 (0)