| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Unison.KindInference.Constraint.Unsolved
Synopsis
- data Constraint uv v loc (typeProv :: Type -> Type -> Type)
- = IsType uv (typeProv v loc)
- | IsArr uv (Provenance v loc) uv uv
- | IsAbility uv (Provenance v loc)
- | Unify (Provenance v loc) uv uv
- typeProv :: forall uv v loc prov prov' f. Applicative f => (prov v loc -> f (prov' v loc)) -> Constraint uv v loc prov -> f (Constraint uv v loc prov')
- prov :: forall uv v loc loc' f. Functor f => (Provenance v loc -> f (Provenance v loc')) -> Constraint uv v loc Provenance -> f (Constraint uv v loc' Provenance)
- loc :: forall uv v loc f. Functor f => (loc -> f loc) -> Constraint uv v loc Provenance -> f (Constraint uv v loc Provenance)
Documentation
data Constraint uv v loc (typeProv :: Type -> Type -> Type) Source #
Unsolved constraints
These are produced during constraint generation and given as input to the constraint solver.
Constructors
| IsType uv (typeProv v loc) | An IsType constraint may arise from generation or from the solver. During generation the provenance is always a real source code location, but the solver defaults unconstrained kind vars to Star. |
| IsArr uv (Provenance v loc) uv uv | |
| IsAbility uv (Provenance v loc) | |
| Unify (Provenance v loc) uv uv |
Instances
| (Show v, Show loc, Show uv, Show (typeProv v loc)) => Show (Constraint uv v loc typeProv) Source # | |
Defined in Unison.KindInference.Constraint.Unsolved Methods showsPrec :: Int -> Constraint uv v loc typeProv -> ShowS # show :: Constraint uv v loc typeProv -> String # showList :: [Constraint uv v loc typeProv] -> ShowS # | |
| (Var v, Eq loc, Eq uv, Eq (typeProv v loc)) => Eq (Constraint uv v loc typeProv) Source # | |
Defined in Unison.KindInference.Constraint.Unsolved Methods (==) :: Constraint uv v loc typeProv -> Constraint uv v loc typeProv -> Bool # (/=) :: Constraint uv v loc typeProv -> Constraint uv v loc typeProv -> Bool # | |
| (Var v, Ord loc, Ord uv, Ord (typeProv v loc)) => Ord (Constraint uv v loc typeProv) Source # | |
Defined in Unison.KindInference.Constraint.Unsolved Methods compare :: Constraint uv v loc typeProv -> Constraint uv v loc typeProv -> Ordering # (<) :: Constraint uv v loc typeProv -> Constraint uv v loc typeProv -> Bool # (<=) :: Constraint uv v loc typeProv -> Constraint uv v loc typeProv -> Bool # (>) :: Constraint uv v loc typeProv -> Constraint uv v loc typeProv -> Bool # (>=) :: Constraint uv v loc typeProv -> Constraint uv v loc typeProv -> Bool # max :: Constraint uv v loc typeProv -> Constraint uv v loc typeProv -> Constraint uv v loc typeProv # min :: Constraint uv v loc typeProv -> Constraint uv v loc typeProv -> Constraint uv v loc typeProv # | |
typeProv :: forall uv v loc prov prov' f. Applicative f => (prov v loc -> f (prov' v loc)) -> Constraint uv v loc prov -> f (Constraint uv v loc prov') Source #
prov :: forall uv v loc loc' f. Functor f => (Provenance v loc -> f (Provenance v loc')) -> Constraint uv v loc Provenance -> f (Constraint uv v loc' Provenance) Source #
loc :: forall uv v loc f. Functor f => (loc -> f loc) -> Constraint uv v loc Provenance -> f (Constraint uv v loc Provenance) Source #