packages feed

singletons-2.6: tests/compile-and-dump/Promote/GenDefunSymbols.ghc88.template

Promote/GenDefunSymbols.hs:0:0:: Splicing declarations
    genDefunSymbols [''LiftMaybe, ''NatT, ''(:+)]
  ======>
    type LiftMaybeSym2 (f0123456789876543210 :: (~>) a0123456789876543210 b0123456789876543210) (x0123456789876543210 :: Maybe a0123456789876543210) =
        LiftMaybe f0123456789876543210 x0123456789876543210
    instance SuppressUnusedWarnings (LiftMaybeSym1 f0123456789876543210) where
      suppressUnusedWarnings = snd (((,) LiftMaybeSym1KindInference) ())
    data LiftMaybeSym1 (f0123456789876543210 :: (~>) a0123456789876543210 b0123456789876543210) :: (~>) (Maybe a0123456789876543210) (Maybe b0123456789876543210)
      where
        LiftMaybeSym1KindInference :: forall f0123456789876543210
                                             x0123456789876543210
                                             arg. Data.Singletons.Internal.SameKind (Apply (LiftMaybeSym1 f0123456789876543210) arg) (LiftMaybeSym2 f0123456789876543210 arg) =>
                                      LiftMaybeSym1 f0123456789876543210 x0123456789876543210
    type instance Apply (LiftMaybeSym1 f0123456789876543210) x0123456789876543210 = LiftMaybe f0123456789876543210 x0123456789876543210
    instance SuppressUnusedWarnings LiftMaybeSym0 where
      suppressUnusedWarnings = snd (((,) LiftMaybeSym0KindInference) ())
    data LiftMaybeSym0 :: forall a0123456789876543210
                                 b0123456789876543210.
                          (~>) ((~>) a0123456789876543210 b0123456789876543210) ((~>) (Maybe a0123456789876543210) (Maybe b0123456789876543210))
      where
        LiftMaybeSym0KindInference :: forall f0123456789876543210
                                             arg. Data.Singletons.Internal.SameKind (Apply LiftMaybeSym0 arg) (LiftMaybeSym1 arg) =>
                                      LiftMaybeSym0 f0123456789876543210
    type instance Apply LiftMaybeSym0 f0123456789876543210 = LiftMaybeSym1 f0123456789876543210
    type ZeroSym0 = 'Zero
    type SuccSym1 (t0123456789876543210 :: NatT) =
        'Succ t0123456789876543210
    instance SuppressUnusedWarnings SuccSym0 where
      suppressUnusedWarnings = snd (((,) SuccSym0KindInference) ())
    data SuccSym0 :: (~>) NatT NatT
      where
        SuccSym0KindInference :: forall t0123456789876543210
                                        arg. Data.Singletons.Internal.SameKind (Apply SuccSym0 arg) (SuccSym1 arg) =>
                                 SuccSym0 t0123456789876543210
    type instance Apply SuccSym0 t0123456789876543210 = 'Succ t0123456789876543210
    type (:+@#@$$$) (a0123456789876543210 :: Nat) (b0123456789876543210 :: Nat) =
        (:+) a0123456789876543210 b0123456789876543210
    instance SuppressUnusedWarnings ((:+@#@$$) a0123456789876543210) where
      suppressUnusedWarnings = snd (((,) (::+@#@$$###)) ())
    data (:+@#@$$) (a0123456789876543210 :: Nat) b0123456789876543210
      where
        (::+@#@$$###) :: forall a0123456789876543210
                                b0123456789876543210
                                arg. Data.Singletons.Internal.SameKind (Apply ((:+@#@$$) a0123456789876543210) arg) ((:+@#@$$$) a0123456789876543210 arg) =>
                         (:+@#@$$) a0123456789876543210 b0123456789876543210
    type instance Apply ((:+@#@$$) a0123456789876543210) b0123456789876543210 = (:+) a0123456789876543210 b0123456789876543210
    instance SuppressUnusedWarnings (:+@#@$) where
      suppressUnusedWarnings = snd (((,) (::+@#@$###)) ())
    data (:+@#@$) a0123456789876543210
      where
        (::+@#@$###) :: forall a0123456789876543210
                               arg. Data.Singletons.Internal.SameKind (Apply (:+@#@$) arg) ((:+@#@$$) arg) =>
                        (:+@#@$) a0123456789876543210
    type instance Apply (:+@#@$) a0123456789876543210 = (:+@#@$$) a0123456789876543210