packages feed

singletons-2.4: tests/compile-and-dump/Promote/Constructors.hs

{-# OPTIONS_GHC -Wno-unused-imports #-}

module Promote.Constructors where

import Data.Singletons.SuppressUnusedWarnings
import Data.Singletons.TH

-- Tests defunctionalization symbol generation for :
--  * infix constructors
--  * constructors with arity > 2

$(promote [d|
  data Foo = Foo | Foo :+ Foo
  data Bar = Bar Bar Bar Bar Bar Foo
 |])