on master help sign in
Do not attempt strictness polymorphism
bff7ac2Index Int
src/Control/Ether/Core.hs−3
@@ -9,7 +9,6 @@ module Control.Ether.Core
9 , UniqueEtherTag
9 , UniqueEtherTag
10 , UniqueEtherTags
10 , UniqueEtherTags
11 , ensureUniqueEtherTags
11 , ensureUniqueEtherTags
12− , Strictness (Strict, Lazy)
13 ) where
12 ) where
14
13
15import Data.Proxy (Proxy)
14import Data.Proxy (Proxy)
@@ -34,8 +33,6 @@ import qualified Control.Monad.Trans.Writer.Strict as Trans.Strict
34-- Never declare instances for this class
33-- Never declare instances for this class
35class UniqueEtherTag a
34class UniqueEtherTag a
36
35
37−data Strictness = Strict | Lazy
38−
39type family IsUnique (x :: k) (as :: [k]) :: Constraint where
36type family IsUnique (x :: k) (as :: [k]) :: Constraint where
40 IsUnique x (x ': as) = UniqueEtherTag x
37 IsUnique x (x ': as) = UniqueEtherTag x
41 IsUnique x (a ': as) = IsUnique x as
38 IsUnique x (a ': as) = IsUnique x as