liquidhaskell-0.8.0.1: Liquid Types for Haskell

Safe HaskellNone
LanguageHaskell98

Language.Haskell.Liquid.Constraint.Fresh

Synopsis

Documentation

class (Applicative m, Monad m) => Freshable m a where Source #

Minimal complete definition

fresh

Methods

fresh :: m a Source #

true :: a -> m a Source #

refresh :: a -> m a Source #

refreshHoles :: (Symbolic t, Reftable r, TyConable c, Freshable f r) => [(t, RType c tv r)] -> f ([Symbol], [(t, RType c tv r)]) Source #

freshTy_type :: KVKind -> CoreExpr -> Type -> CG SpecType Source #

Generation: Freshness -----------------------------------------------------

Right now, we generate NO new pvars. Rather than clutter code with uRType calls, put it in one place where the above invariant is obviously enforced. Constraint generation should ONLY use freshTy_type and freshTy_expr

addKuts :: PPrint a => a -> SpecType -> CG () Source #