blanks-0.3.0: Fill-in-the-blanks - A library factoring out substitution from ASTs

Safe HaskellNone
LanguageHaskell2010

Blanks.Sub

Documentation

newtype Sub a Source #

Constructors

Sub 

Fields

Instances
Monad Sub Source # 
Instance details

Defined in Blanks.Sub

Methods

(>>=) :: Sub a -> (a -> Sub b) -> Sub b #

(>>) :: Sub a -> Sub b -> Sub b #

return :: a -> Sub a #

fail :: String -> Sub a #

Functor Sub Source # 
Instance details

Defined in Blanks.Sub

Methods

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

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

Applicative Sub Source # 
Instance details

Defined in Blanks.Sub

Methods

pure :: a -> Sub a #

(<*>) :: Sub (a -> b) -> Sub a -> Sub b #

liftA2 :: (a -> b -> c) -> Sub a -> Sub b -> Sub c #

(*>) :: Sub a -> Sub b -> Sub b #

(<*) :: Sub a -> Sub b -> Sub a #

Foldable Sub Source # 
Instance details

Defined in Blanks.Sub

Methods

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

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

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

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

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

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

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

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

toList :: Sub a -> [a] #

null :: Sub a -> Bool #

length :: Sub a -> Int #

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

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

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

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

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

Traversable Sub Source # 
Instance details

Defined in Blanks.Sub

Methods

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

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

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

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

ThrowSub Sub Source # 
Instance details

Defined in Blanks.Sub

Methods

throwSub :: SubError -> Sub a Source #

data SubError Source #

Instances
Eq SubError Source # 
Instance details

Defined in Blanks.Sub

Show SubError Source # 
Instance details

Defined in Blanks.Sub

Exception SubError Source # 
Instance details

Defined in Blanks.Sub

class ThrowSub m where Source #

Methods

throwSub :: SubError -> m a Source #

Instances
ThrowSub Sub Source # 
Instance details

Defined in Blanks.Sub

Methods

throwSub :: SubError -> Sub a Source #