sslang-0.1.0.0
Safe HaskellNone
LanguageHaskell2010

IR.Constraint.Type

Synopsis

Documentation

type Variable = Point Descriptor Source #

TYPE PRIMITIVES

data FlatType Source #

Constructors

TCon1 TConId [Variable] 

data Type Source #

Constructors

TConN TConId [Type] 
TVarN Variable 

Instances

Instances details
Eq Type Source # 
Instance details

Defined in IR.Constraint.Type

Methods

(==) :: Type -> Type -> Bool #

(/=) :: Type -> Type -> Bool #

data Descriptor Source #

DESCRIPTORS

Constructors

Descriptor 

noRank :: Int Source #

RANKS

newtype Mark Source #

MARKS

Constructors

Mark Int 

Instances

Instances details
Eq Mark Source # 
Instance details

Defined in IR.Constraint.Type

Methods

(==) :: Mark -> Mark -> Bool #

(/=) :: Mark -> Mark -> Bool #

Ord Mark Source # 
Instance details

Defined in IR.Constraint.Type

Methods

compare :: Mark -> Mark -> Ordering #

(<) :: Mark -> Mark -> Bool #

(<=) :: Mark -> Mark -> Bool #

(>) :: Mark -> Mark -> Bool #

(>=) :: Mark -> Mark -> Bool #

max :: Mark -> Mark -> Mark #

min :: Mark -> Mark -> Mark #

foldArrow :: ([Type], Type) -> Type Source #

BUILT-IN TYPES

Fold a list of argument types and a return type into an Arrow Type.

(==>) :: Type -> Type -> Type infixr 0 Source #

mkFlexVar :: TC Variable Source #

MAKE FLEX VARIABLES

toCanType :: Variable -> TC Type Source #

TO CANONICAL TYPE

toErrorType :: Variable -> TC Type Source #

TO ERROR TYPE