{-# LANGUAGE TypeOperators, DataKinds, PolyKinds, TypeFamilies, TemplateHaskell, GADTs, UndecidableInstances, RankNTypes, ScopedTypeVariables, FlexibleContexts, TypeApplications, StandaloneKindSignatures #-} {-# OPTIONS_GHC -O0 #-} ----------------------------------------------------------------------------- -- | -- Module : Data.List.Singletons.Internal -- Copyright : (C) 2013-2014 Richard Eisenberg, Jan Stolarek -- License : BSD-style (see LICENSE) -- Maintainer : Ryan Scott -- Stability : experimental -- Portability : non-portable -- -- Defines functions and datatypes relating to the singleton for '[]', -- including singled versions of a few of the definitions in @Data.List@. -- -- All of the functions defined in this module are specialized for lists, -- unlike "Data.List.Singletons", which uses 'Foldable' and -- 'Traversable' contexts when available. -- ---------------------------------------------------------------------------- module Data.List.Singletons.Internal where import Control.Monad.Singletons.Internal import Data.Bool.Singletons import Data.Eq.Singletons import Data.Maybe import Data.Maybe.Singletons import Data.Ord.Singletons import Data.Semigroup.Singletons.Internal (SSemigroup(..), type (<>@#@$)) import Data.Singletons.Base.Instances import Data.Singletons.TH import Data.Tuple.Singletons import GHC.Base.Singletons import GHC.Num.Singletons import GHC.TypeLits.Singletons $