packages feed

singletons-base-3.5: tests/compile-and-dump/Singletons/T326.golden

Singletons/T326.hs:0:0:: Splicing declarations
    genPromotions [''C1]
  ======>
    type (<%>@#@$) :: forall (a :: Type). (~>) a ((~>) a a)
    data (<%>@#@$) :: (~>) a ((~>) a a)
      where
        (:<%>@#@$###) :: SameKind (Apply (<%>@#@$) arg) ((<%>@#@$$) arg) =>
                         (<%>@#@$) a0123456789876543210
    type instance Apply @a @((~>) a a) (<%>@#@$) a0123456789876543210 = (<%>@#@$$) a0123456789876543210
    instance SuppressUnusedWarnings (<%>@#@$) where
      suppressUnusedWarnings = snd ((,) (:<%>@#@$###) ())
    infixl 9 type <%>@#@$
    type (<%>@#@$$) :: forall (a :: Type). a -> (~>) a a
    data (<%>@#@$$) (a0123456789876543210 :: a) :: (~>) a a
      where
        (:<%>@#@$$###) :: SameKind (Apply ((<%>@#@$$) a0123456789876543210) arg) ((<%>@#@$$$) a0123456789876543210 arg) =>
                          (<%>@#@$$) a0123456789876543210 a0123456789876543210
    type instance Apply @a @a ((<%>@#@$$) a0123456789876543210) a0123456789876543210 = (<%>) a0123456789876543210 a0123456789876543210
    instance SuppressUnusedWarnings ((<%>@#@$$) a0123456789876543210) where
      suppressUnusedWarnings = snd ((,) (:<%>@#@$$###) ())
    infixl 9 type <%>@#@$$
    type (<%>@#@$$$) :: forall (a :: Type). a -> a -> a
    type family (<%>@#@$$$) @(a :: Type) (a0123456789876543210 :: a) (a0123456789876543210 :: a) :: a where
      (<%>@#@$$$) a0123456789876543210 a0123456789876543210 = (<%>) a0123456789876543210 a0123456789876543210
    infixl 9 type <%>@#@$$$
    type PC1 :: Type -> Constraint
    class PC1 (a :: Type) where
      type family (<%>) (arg :: a) (arg :: a) :: a
    infixl 9 type <%>
Singletons/T326.hs:0:0:: Splicing declarations
    genSingletons [''C2]
  ======>
    type (<%%>@#@$) :: forall (a :: Type). (~>) a ((~>) a a)
    data (<%%>@#@$) :: (~>) a ((~>) a a)
      where
        (:<%%>@#@$###) :: SameKind (Apply (<%%>@#@$) arg) ((<%%>@#@$$) arg) =>
                          (<%%>@#@$) a0123456789876543210
    type instance Apply @a @((~>) a a) (<%%>@#@$) a0123456789876543210 = (<%%>@#@$$) a0123456789876543210
    instance SuppressUnusedWarnings (<%%>@#@$) where
      suppressUnusedWarnings = snd ((,) (:<%%>@#@$###) ())
    infixl 9 type <%%>@#@$
    type (<%%>@#@$$) :: forall (a :: Type). a -> (~>) a a
    data (<%%>@#@$$) (a0123456789876543210 :: a) :: (~>) a a
      where
        (:<%%>@#@$$###) :: SameKind (Apply ((<%%>@#@$$) a0123456789876543210) arg) ((<%%>@#@$$$) a0123456789876543210 arg) =>
                           (<%%>@#@$$) a0123456789876543210 a0123456789876543210
    type instance Apply @a @a ((<%%>@#@$$) a0123456789876543210) a0123456789876543210 = (<%%>) a0123456789876543210 a0123456789876543210
    instance SuppressUnusedWarnings ((<%%>@#@$$) a0123456789876543210) where
      suppressUnusedWarnings = snd ((,) (:<%%>@#@$$###) ())
    infixl 9 type <%%>@#@$$
    type (<%%>@#@$$$) :: forall (a :: Type). a -> a -> a
    type family (<%%>@#@$$$) @(a :: Type) (a0123456789876543210 :: a) (a0123456789876543210 :: a) :: a where
      (<%%>@#@$$$) a0123456789876543210 a0123456789876543210 = (<%%>) a0123456789876543210 a0123456789876543210
    infixl 9 type <%%>@#@$$$
    type PC2 :: Type -> Constraint
    class PC2 (a :: Type) where
      type family (<%%>) (arg :: a) (arg :: a) :: a
    infixl 9 type <%%>
    class SC2 (a :: Type) where
      (%<%%>) ::
        (forall (t :: a) (t :: a).
         Sing t -> Sing t -> Sing ((<%%>) t t :: a) :: Type)
    type SC2 :: Type -> Constraint
    infixl 9 data %<%%>
    instance SC2 a => SingI ((<%%>@#@$) :: (~>) a ((~>) a a)) where
      sing = singFun2 @(<%%>@#@$) (%<%%>)
    instance (SC2 a, SingI d) =>
             SingI ((<%%>@#@$$) (d :: a) :: (~>) a a) where
      sing = singFun1 @((<%%>@#@$$) (d :: a)) ((%<%%>) (sing @d))
    instance SC2 a => SingI1 ((<%%>@#@$$) :: a -> (~>) a a) where
      liftSing (s :: Sing (d :: a))
        = singFun1 @((<%%>@#@$$) (d :: a)) ((%<%%>) s)