Copyright | 2013 Kei Hibino |
---|---|
License | BSD3 |
Maintainer | ex8k.hibino@gmail.com |
Stability | experimental |
Portability | unknown |
Safe Haskell | None |
Language | Haskell2010 |
This module defines monad transformer which lift from context into context with assigning.
- data Assignings r m a
- assignings :: Monad m => m a -> Assignings r m a
- assignTo :: Monad m => Projection Flat v -> AssignTarget r v -> Assignings r m ()
- (<-#) :: Monad m => AssignTarget r v -> Projection Flat v -> Assignings r m ()
- type AssignTarget r v = Pi r v
- extractAssignments :: (Monad m, Functor m) => Assignings r m a -> m (a, Table r -> Assignments)
Transformer into context with assignments
data Assignings r m a Source
Type to accumulate assigning context.
Type r
is table record type.
MonadQualify ConfigureQuery (Assign r) | Instance to lift from qualified table forms into |
MonadRestrict c m => MonadRestrict c (Assignings r m) |
|
MonadTrans (Assignings r) | |
Monad m => Monad (Assignings r m) | |
Functor m => Functor (Assignings r m) | |
Applicative m => Applicative (Assignings r m) |
assignings :: Monad m => m a -> Assignings r m a Source
Lift to Assignings
API of context with assignments
assignTo :: Monad m => Projection Flat v -> AssignTarget r v -> Assignings r m () Source
Add an assignment.
(<-#) :: Monad m => AssignTarget r v -> Projection Flat v -> Assignings r m () infix 4 Source
Add and assginment.
type AssignTarget r v = Pi r v Source
Target of assignment.
Result SQL set clause
extractAssignments :: (Monad m, Functor m) => Assignings r m a -> m (a, Table r -> Assignments) Source
Run Assignings
to get Assignments