{-# LANGUAGE DataKinds #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE KindSignatures #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
module Data.Generics.Internal.Families
( module Families
, ShowSymbols
) where
import Data.Generics.Internal.Families.Collect as Families
import Data.Generics.Internal.Families.Has as Families
import Data.Generics.Internal.Families.Changing as Families
import GHC.TypeLits (ErrorMessage (..), Symbol)
type family ShowSymbols (ctors :: [Symbol]) :: ErrorMessage where
ShowSymbols '[]
= 'Text ""
ShowSymbols (c ': cs)
= 'Text "• " ':<>: 'Text c ':$$: ShowSymbols cs