packages feed

singletons-base-3.4: tests/compile-and-dump/Singletons/PolyKinds.golden

Singletons/PolyKinds.hs:(0,0)-(0,0): Splicing declarations
    singletons
      [d| class Cls (a :: k) where
            fff :: Proxy (a :: k) -> () |]
  ======>
    class Cls (a :: k) where
      fff :: Proxy (a :: k) -> ()
    type FffSym0 :: forall k (a :: k). (~>) (Proxy (a :: k)) ()
    data FffSym0 :: (~>) (Proxy (a :: k)) ()
      where
        FffSym0KindInference :: SameKind (Apply FffSym0 arg) (FffSym1 arg) =>
                                FffSym0 a0123456789876543210
    type instance Apply FffSym0 a0123456789876543210 = Fff a0123456789876543210
    instance SuppressUnusedWarnings FffSym0 where
      suppressUnusedWarnings = snd ((,) FffSym0KindInference ())
    type FffSym1 :: forall k (a :: k). Proxy (a :: k) -> ()
    type family FffSym1 @k @(a :: k) (a0123456789876543210 :: Proxy (a :: k)) :: () where
      FffSym1 a0123456789876543210 = Fff a0123456789876543210
    class PCls (a :: k) where
      type family Fff (arg :: Proxy (a :: k)) :: ()
    class SCls (a :: k) where
      sFff ::
        (forall (t :: Proxy (a :: k)).
         Sing t -> Sing (Apply FffSym0 t :: ()) :: Type)
    instance SCls a =>
             SingI (FffSym0 :: (~>) (Proxy (a :: k)) ()) where
      sing = singFun1 @FffSym0 sFff