constraint 0.1.1.1 → 0.1.2.0
raw patch · 2 files changed
+34/−2 lines, 2 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Data.Constraint: instance Data.Semigroup.Semigroup (Data.Constraint.Dict a)
+ Data.Constraint: instance GHC.Base.Semigroup (Data.Constraint.Dict a)
+ Data.Constraint.Lifting: class Lifting c d f
+ Data.Constraint.Lifting: instance Data.Constraint.Lifting.Lifting Control.Category.Category Control.Category.Groupoid.Groupoid Data.Morphism.Iso.Iso
+ Data.Constraint.Lifting: instance Data.Constraint.Lifting.Lifting GHC.Base.Monoid GHC.Base.Monoid ((->) a)
+ Data.Constraint.Lifting: instance Data.Constraint.Lifting.Lifting GHC.Base.Semigroup GHC.Base.Monoid GHC.Maybe.Maybe
+ Data.Constraint.Lifting: instance Data.Constraint.Lifting.Lifting GHC.Base.Semigroup GHC.Base.Semigroup ((->) a)
+ Data.Constraint.Lifting: instance GHC.Base.Monoid a => Data.Constraint.Lifting.Lifting GHC.Base.Monoid GHC.Base.Monoid ((,) a)
+ Data.Constraint.Lifting: instance GHC.Base.Semigroup a => Data.Constraint.Lifting.Lifting GHC.Base.Semigroup GHC.Base.Semigroup ((,) a)
+ Data.Constraint.Lifting: instance forall k1 k2 (s :: k2 -> k2 -> *). Data.Constraint.Lifting.Lifting (Control.Categorical.Functor.Functor s (->)) (Control.Categorical.Functor.Functor (Control.Categorical.Functor.NT s) (Control.Categorical.Functor.NT (->))) Data.Functor.Compose.Compose
+ Data.Constraint.Lifting: lift :: Lifting c d f => c a :- d (f a)
+ Data.Constraint.Lifting: type Endolifting c = Lifting c c
- Data.Constraint: (\\) :: (b => c) -> (a :- b) -> (a => c)
+ Data.Constraint: (\\) :: (b => c) -> (a :- b) -> a => c
- Data.Constraint: data Constraint :: *
+ Data.Constraint: data Constraint
- Data.Constraint: newtype a (:-) b
+ Data.Constraint: newtype a :- b
Files
- Data/Constraint/Lifting.hs +30/−0
- constraint.cabal +4/−2
+ Data/Constraint/Lifting.hs view
@@ -0,0 +1,30 @@+module Data.Constraint.Lifting where++import Prelude hiding (Functor, (.), id)++import Control.Categorical.Functor+import Control.Category+import Control.Category.Groupoid+import Data.Constraint+import Data.Functor.Classes+import Data.Functor.Compose+import Data.Morphism.Iso++class Lifting c d f where+ lift :: c a :- d (f a)++type Endolifting c = Lifting c c++--instance (∀ a . c a => d (f a)) => Lifting c d f where lift = Sub Dict++instance Lifting Semigroup Monoid Maybe where lift = Sub Dict++instance Lifting Semigroup Semigroup ((->) a) where lift = Sub Dict+instance Lifting Monoid Monoid ((->) a) where lift = Sub Dict++instance Semigroup a => Lifting Semigroup Semigroup ((,) a) where lift = Sub Dict+instance Monoid a => Lifting Monoid Monoid ((,) a) where lift = Sub Dict++instance Lifting (Functor s (->)) (Functor (NT s) (NT (->))) Compose where lift = Sub Dict++instance Lifting Category Groupoid Iso where lift = Sub Dict
constraint.cabal view
@@ -1,5 +1,5 @@ name: constraint-version: 0.1.1.1+version: 0.1.2.0 synopsis: Reified constraints -- description: license: BSD3@@ -14,6 +14,7 @@ library exposed-modules: Data.Constraint , Data.Constraint.Compose+ , Data.Constraint.Lifting , Data.Constraint.Product -- other-modules: -- other-extensions: @@ -21,7 +22,8 @@ , category >=0.1.2 && <0.3 -- hs-source-dirs: default-language: Haskell2010- default-extensions: TypeOperators+ default-extensions: UnicodeSyntax+ , TypeOperators , RankNTypes , PolyKinds , ConstraintKinds