Copyright | (C) 2018 Murat Kasimov |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Murat Kasimov <iokasimov.m@gmail.com> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | Safe |
Language | Haskell2010 |
Get all your structure and rip it apart.
The main idea: if you can describe your data structure via Cofree, with apart you can serialize, persistent or hash a segment of your structure!
A simple introduction to this library can be found here: https://iokasimov.github.io/posts/2018/05/cofree-will-tear-us-apart
Documentation
newtype Apart t raw value Source #
Structure with scattered segments.
Instances
Traversable t => Bitraversable (Apart t) Source # | |
Defined in Data.Apart bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Apart t a b -> f (Apart t c d) # | |
Foldable t => Bifoldable (Apart t) Source # | |
Functor t => Bifunctor (Apart t) Source # | |
Functor t => Functor (Apart t raw) Source # | |
Apply t => Apply (Apart t raw) Source # | |