liquidhaskell-0.8.0.2: Liquid Types for Haskell

Safe HaskellNone
LanguageHaskell98

Language.Haskell.Liquid.Constraint.Types

Contents

Synopsis

Constraint Generation Monad

Constraint information

data CGInfo Source #

Generation: Types ---------------------------------------------------------

Constructors

CGInfo 

Fields

Constraint Generation Environment

data CGEnv Source #

Constructors

CGE 

Fields

Logical constraints (FIXME: related to bounds?)

Fixpoint environment

data FEnv Source #

Fixpoint Environment ------------------------------------------------------

Constructors

FE 

Fields

  • feBinds :: !IBindEnv

    Integer Keys for Fixpoint Environment

  • feEnv :: !(SEnv Sort)

    Fixpoint Environment

  • feIdEnv :: !(SEnv BindId)

    Map from Symbol to current BindId

Instances

NFData FEnv Source # 

Methods

rnf :: FEnv -> () #

initFEnv :: [(Symbol, Sort)] -> FEnv Source #

insertsFEnv :: FEnv -> [((Symbol, Sort), BindId)] -> FEnv Source #

Hole Environment

data HEnv Source #

Helper Types: HEnv --------------------------------------------------------

fromListHEnv :: [Symbol] -> HEnv Source #

elemHEnv :: Symbol -> HEnv -> Bool Source #

Subtyping Constraints

data SubC Source #

Subtyping Constraints -----------------------------------------------------

Constructors

SubC 

Fields

SubR 

Fields

Instances

NFData SubC Source # 

Methods

rnf :: SubC -> () #

PPrint SubC Source # 

Methods

pprintTidy :: Tidy -> SubC -> Doc #

pprintPrec :: Int -> Tidy -> SubC -> Doc #

SubStratum SubC Source # 

Methods

subS :: (Symbol, Stratum) -> SubC -> SubC Source #

subsS :: [(Symbol, Stratum)] -> SubC -> SubC Source #

type FixSubC = SubC Cinfo Source #

Well-formedness Constraints

data WfC Source #

Constructors

WfC !CGEnv !SpecType 

Instances

NFData WfC Source # 

Methods

rnf :: WfC -> () #

PPrint WfC Source # 

Methods

pprintTidy :: Tidy -> WfC -> Doc #

pprintPrec :: Int -> Tidy -> WfC -> Doc #

type FixWfC = WfC Cinfo Source #

Invariants

Aliases?