summaryrefslogtreecommitdiff
path: root/testsuite/tests
diff options
context:
space:
mode:
authorOleg Grenrus <oleg.grenrus@iki.fi>2022-12-12 18:21:08 +0200
committerOleg Grenrus <oleg.grenrus@iki.fi>2023-03-04 01:13:55 +0200
commit858f34d5270936ff565880ed3ff244a0ab5f3987 (patch)
treebcc9366a47e52f770bec59086b952fc35fa32177 /testsuite/tests
parentbd0536afee5d5f91d99af2ab193b6eee5b1da07a (diff)
downloadhaskell-858f34d5270936ff565880ed3ff244a0ab5f3987.tar.gz
Add decideSymbol, decideChar, decideNat, decTypeRep, decT and hdecT
These all type-level equality decision procedures. Implementes a CLC proposal https://github.com/haskell/core-libraries-committee/issues/98
Diffstat (limited to 'testsuite/tests')
-rw-r--r--testsuite/tests/ghci/scripts/T9181.stdout21
1 files changed, 21 insertions, 0 deletions
diff --git a/testsuite/tests/ghci/scripts/T9181.stdout b/testsuite/tests/ghci/scripts/T9181.stdout
index 356d047a81..cdbd8e9351 100644
--- a/testsuite/tests/ghci/scripts/T9181.stdout
+++ b/testsuite/tests/ghci/scripts/T9181.stdout
@@ -48,6 +48,20 @@ GHC.TypeLits.cmpChar ::
GHC.TypeLits.cmpSymbol ::
(GHC.TypeLits.KnownSymbol a, GHC.TypeLits.KnownSymbol b) =>
proxy1 a -> proxy2 b -> Data.Type.Ord.OrderingI a b
+GHC.TypeLits.decideChar ::
+ (GHC.TypeLits.KnownChar a, GHC.TypeLits.KnownChar b) =>
+ proxy1 a
+ -> proxy2 b
+ -> Either
+ ((a Data.Type.Equality.:~: b) -> GHC.Base.Void)
+ (a Data.Type.Equality.:~: b)
+GHC.TypeLits.decideSymbol ::
+ (GHC.TypeLits.KnownSymbol a, GHC.TypeLits.KnownSymbol b) =>
+ proxy1 a
+ -> proxy2 b
+ -> Either
+ ((a Data.Type.Equality.:~: b) -> GHC.Base.Void)
+ (a Data.Type.Equality.:~: b)
GHC.TypeLits.fromSChar :: GHC.TypeLits.SChar c -> Char
GHC.TypeLits.fromSNat :: GHC.TypeNats.SNat n -> Integer
GHC.TypeLits.fromSSymbol :: GHC.TypeLits.SSymbol s -> String
@@ -172,6 +186,13 @@ type family (GHC.TypeNats.^) a b
GHC.TypeNats.cmpNat ::
(GHC.TypeNats.KnownNat a, GHC.TypeNats.KnownNat b) =>
proxy1 a -> proxy2 b -> Data.Type.Ord.OrderingI a b
+GHC.TypeNats.decideNat ::
+ (GHC.TypeNats.KnownNat a, GHC.TypeNats.KnownNat b) =>
+ proxy1 a
+ -> proxy2 b
+ -> Either
+ ((a Data.Type.Equality.:~: b) -> GHC.Base.Void)
+ (a Data.Type.Equality.:~: b)
GHC.TypeNats.sameNat ::
(GHC.TypeNats.KnownNat a, GHC.TypeNats.KnownNat b) =>
proxy1 a -> proxy2 b -> Maybe (a Data.Type.Equality.:~: b)