packages feed

singletons-base-3.3: tests/compile-and-dump/Singletons/T229.golden

Singletons/T229.hs:(0,0)-(0,0): Splicing declarations
    singletons
      [d| ___foo :: Bool -> Bool
          ___foo _ = True |]
  ======>
    ___foo :: Bool -> Bool
    ___foo _ = True
    type US___fooSym0 :: (~>) Bool Bool
    data US___fooSym0 :: (~>) Bool Bool
      where
        US___fooSym0KindInference :: SameKind (Apply US___fooSym0 arg) (US___fooSym1 arg) =>
                                     US___fooSym0 a0123456789876543210
    type instance Apply US___fooSym0 a0123456789876543210 = US___foo a0123456789876543210
    instance SuppressUnusedWarnings US___fooSym0 where
      suppressUnusedWarnings = snd ((,) US___fooSym0KindInference ())
    type US___fooSym1 :: Bool -> Bool
    type family US___fooSym1 (a0123456789876543210 :: Bool) :: Bool where
      US___fooSym1 a0123456789876543210 = US___foo a0123456789876543210
    type US___foo :: Bool -> Bool
    type family US___foo (a :: Bool) :: Bool where
      US___foo _ = TrueSym0
    ___sfoo ::
      (forall (t :: Bool).
       Sing t -> Sing (Apply US___fooSym0 t :: Bool) :: Type)
    ___sfoo _ = STrue
    instance SingI (US___fooSym0 :: (~>) Bool Bool) where
      sing = singFun1 @US___fooSym0 ___sfoo