Copyright | (c) Christian Maeder and Uni Bremen 2003-2005 |
---|---|
License | GPLv2 or higher, see LICENSE.txt |
Maintainer | Christian.Maeder@dfki.de |
Stability | experimental |
Portability | portable |
Safe Haskell | None |
constraint resolution
- type Constraints = Set Constrain
- data Constrain
- noC :: Constraints
- substC :: Subst -> Constraints -> Constraints
- joinC :: Constraints -> Constraints -> Constraints
- insertC :: Constrain -> Constraints -> Constraints
- partitionC :: Constraints -> (Constraints, Constraints)
- toListC :: Constraints -> [(Type, Type)]
- shapeRelAndSimplify :: Bool -> Env -> Constraints -> Maybe Type -> State Int (Result (Subst, Constraints))
- fromTypeMap :: TypeMap -> Rel Type
Documentation
type Constraints = Set Constrain
data Constrain
noC :: Constraints
substC :: Subst -> Constraints -> Constraints
joinC :: Constraints -> Constraints -> Constraints
insertC :: Constrain -> Constraints -> Constraints
partitionC :: Constraints -> (Constraints, Constraints)
partition into qualification and subtyping constraints
toListC :: Constraints -> [(Type, Type)]
convert subtypings constrains to a pair list
shapeRelAndSimplify :: Bool -> Env -> Constraints -> Maybe Type -> State Int (Result (Subst, Constraints))
fromTypeMap :: TypeMap -> Rel Type
the type relation of declared types