intensional-datatys-0.2.0.0: A GHC Core plugin for intensional datatype refinement checking
Safe HaskellNone
LanguageHaskell2010

Intensional.Scheme

Synopsis

Documentation

data SchemeGen d Source #

Constructors

Scheme 

Instances

Instances details
Functor SchemeGen Source # 
Instance details

Defined in Intensional.Scheme

Methods

fmap :: (a -> b) -> SchemeGen a -> SchemeGen b #

(<$) :: a -> SchemeGen b -> SchemeGen a #

Foldable SchemeGen Source # 
Instance details

Defined in Intensional.Scheme

Methods

fold :: Monoid m => SchemeGen m -> m #

foldMap :: Monoid m => (a -> m) -> SchemeGen a -> m #

foldMap' :: Monoid m => (a -> m) -> SchemeGen a -> m #

foldr :: (a -> b -> b) -> b -> SchemeGen a -> b #

foldr' :: (a -> b -> b) -> b -> SchemeGen a -> b #

foldl :: (b -> a -> b) -> b -> SchemeGen a -> b #

foldl' :: (b -> a -> b) -> b -> SchemeGen a -> b #

foldr1 :: (a -> a -> a) -> SchemeGen a -> a #

foldl1 :: (a -> a -> a) -> SchemeGen a -> a #

toList :: SchemeGen a -> [a] #

null :: SchemeGen a -> Bool #

length :: SchemeGen a -> Int #

elem :: Eq a => a -> SchemeGen a -> Bool #

maximum :: Ord a => SchemeGen a -> a #

minimum :: Ord a => SchemeGen a -> a #

sum :: Num a => SchemeGen a -> a #

product :: Num a => SchemeGen a -> a #

Traversable SchemeGen Source # 
Instance details

Defined in Intensional.Scheme

Methods

traverse :: Applicative f => (a -> f b) -> SchemeGen a -> f (SchemeGen b) #

sequenceA :: Applicative f => SchemeGen (f a) -> f (SchemeGen a) #

mapM :: Monad m => (a -> m b) -> SchemeGen a -> m (SchemeGen b) #

sequence :: Monad m => SchemeGen (m a) -> m (SchemeGen a) #

Binary d => Binary (SchemeGen d) Source # 
Instance details

Defined in Intensional.Scheme

Methods

put_ :: BinHandle -> SchemeGen d -> IO () #

put :: BinHandle -> SchemeGen d -> IO (Bin (SchemeGen d)) #

get :: BinHandle -> IO (SchemeGen d) #

Outputable d => Outputable (SchemeGen d) Source # 
Instance details

Defined in Intensional.Scheme

Methods

ppr :: SchemeGen d -> SDoc #

pprPrec :: Rational -> SchemeGen d -> SDoc #

Outputable d => Refined (SchemeGen d) Source # 
Instance details

Defined in Intensional.Scheme

pattern Forall :: [Name] -> TypeGen d -> SchemeGen d Source #

unsats :: Scheme -> ConstraintSet Source #

Given a scheme s, unsats s is the constraint set containing just the trivially unsatisfiable constraints associated with s.