hw-mquery-0.2.0.1: Monadic query DSL

Safe HaskellNone
LanguageHaskell2010

HaskellWorks.Data.MQuery

Documentation

newtype MQuery a Source #

Constructors

MQuery (DList a) 
Instances
Monad MQuery Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Methods

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

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

return :: a -> MQuery a #

fail :: String -> MQuery a #

Functor MQuery Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Methods

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

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

Applicative MQuery Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Methods

pure :: a -> MQuery a #

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

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

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

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

Foldable MQuery Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Methods

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

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

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

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

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

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

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

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

toList :: MQuery a -> [a] #

null :: MQuery a -> Bool #

length :: MQuery a -> Int #

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

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

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

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

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

Alternative MQuery Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Methods

empty :: MQuery a #

(<|>) :: MQuery a -> MQuery a -> MQuery a #

some :: MQuery a -> MQuery [a] #

many :: MQuery a -> MQuery [a] #

MonadPlus MQuery Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Methods

mzero :: MQuery a #

mplus :: MQuery a -> MQuery a -> MQuery a #

Semigroup (MQuery a) Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Methods

(<>) :: MQuery a -> MQuery a -> MQuery a #

sconcat :: NonEmpty (MQuery a) -> MQuery a #

stimes :: Integral b => b -> MQuery a -> MQuery a #

Monoid (MQuery a) Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Methods

mempty :: MQuery a #

mappend :: MQuery a -> MQuery a -> MQuery a #

mconcat :: [MQuery a] -> MQuery a #

Pretty (MQuery Int) Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Methods

pretty :: MQuery Int -> Doc #

prettyList :: [MQuery Int] -> Doc #

Pretty (MQuery Integer) Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Pretty (MQuery String) Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

ToBool (MQuery a) Source # 
Instance details

Defined in HaskellWorks.Data.MQuery

Methods

toBool :: MQuery a -> Bool Source #

class IsPredicate a where Source #

Associated Types

type ArgOf a Source #

Methods

toPredicate :: ArgOf a -> a -> Bool Source #

satisfying :: (a -> Bool) -> a -> MQuery a Source #

key :: Entry k v -> MQuery k Source #

value :: Entry k v -> MQuery v Source #

dlTake :: Int -> DList a -> DList a Source #

select :: ToBool b => a -> (a -> b) -> MQuery a Source #

having :: (a -> MQuery b) -> a -> MQuery a Source #

valueOf :: Eq a => a -> a -> MQuery a Source #

limit :: Int -> MQuery a -> MQuery a Source #

skip :: Int -> MQuery a -> MQuery a Source #

page :: Int -> Int -> MQuery a -> MQuery a Source #

sorted :: Ord a => MQuery a -> MQuery a Source #

onList :: ([a] -> [a]) -> MQuery a -> MQuery a Source #

aggregate :: ([a] -> b) -> MQuery a -> MQuery b Source #

uniq :: Eq a => [a] -> [a] Source #

(/^.) :: Monad m => s -> Getting a s a -> m a Source #

(/^..) :: (Monad m, Foldable t, Monoid (m a)) => s -> Getting (t a) s (t a) -> m a Source #

(>>^.) :: Monad m => m a -> Getting b a b -> m b infixl 1 Source #

(>>^..) :: (Monad m, Foldable t, Monoid (m a), Monoid (m b)) => m a -> Getting (t b) a (t b) -> m b infixl 1 Source #