| Copyright | 2013-2017 Kei Hibino |
|---|---|
| License | BSD3 |
| Maintainer | ex8k.hibino@gmail.com |
| Stability | experimental |
| Portability | unknown |
| Safe Haskell | None |
| Language | Haskell2010 |
Database.Relational.Pi
Contents
Description
This module defines typed projection path objects. Contains normal interfaces.
Projection path
Projection path from type r0 into type r1.
This type also indicate key object which type is r1 for record type r0.
Instances
| ProductIsoFunctor (Pi a) Source # | Map projection path |
| ProductIsoApplicative (Pi a) Source # | Compose projection path |
| Category * Pi Source # | |
| ProductIsoEmpty (Pi a) () Source # | |
| PersistableWidth r0 => Show (Pi r0 r1) Source # | |
(<?.?>) :: Pi a (Maybe b) -> Pi b (Maybe c) -> Pi a (Maybe c) infixl 8 Source #
Compose projection path. Maybe phantom functors are join-ed like >=>.
Arguments
| :: PersistableWidth a | |
| => Pi (a, b) a | Projection path of fst. |
Projection path for fst of tuple.
Arguments
| :: (PersistableWidth a, PersistableWidth b) | |
| => Pi (a, b) b | Projection path of snd. |
Projection path for snd of tuple.