Portability  unknown 

Stability  experimental 
Maintainer  ex8k.hibino@gmail.com 
Safe Haskell  None 
This module defines monad transformer which lift to basic MonadQuery
.
 data Restrictings c m a
 restrictings :: Monad m => m a > Restrictings c m a
 extractRestrict :: (Monad m, Functor m) => Restrictings c m a > m (a, QueryRestriction c)
Transformer into restricted context
data Restrictings c m a Source
Type to accumulate query restrictions.
Type c
is context tag of restriction building like
Flat (where) or Aggregated (having).
MonadQualify ConfigureQuery Restrict  Instance to lift from qualified table forms into 
MonadQualify ConfigureQuery QueryAggregate  Instance to lift from qualified table forms into 
MonadQualify ConfigureQuery (Assign r)  Instance to lift from qualified table forms into 
MonadQualify ConfigureQuery (Orderings Flat QueryCore)  Instance to lift from qualified table forms into 
(Monad q, Functor q) => MonadRestrict c (Restrictings c q) 

MonadRestrict Flat q => MonadRestrict Flat (Restrictings Aggregated q)  Restricted 
MonadTrans (Restrictings c)  
Monad m => Monad (Restrictings c m)  
Functor m => Functor (Restrictings c m)  
Applicative m => Applicative (Restrictings c m)  
MonadAggregate m => MonadAggregate (Restrictings c m)  Resticted 
MonadQuery q => MonadQuery (Restrictings c q)  Restricted 
restrictings :: Monad m => m a > Restrictings c m aSource
Lift to Restrictings
Result
extractRestrict :: (Monad m, Functor m) => Restrictings c m a > m (a, QueryRestriction c)Source
Run Restrictings
to get QueryRestriction