packages feed

lensref-0.1: lensref.cabal

name:               lensref
version:            0.1
category:           Control, Data
synopsis:           References which can be joined and on which lenses can be applied
description:
    The lensref package provides and interface an two implementation
    for references which can be joined and on which lenses can be applied.
    .
    * The pure implementation is slow and has memory leaks but probably easier to follow.
    This is the reference implementation, so if the the other implementation
    differs this has the right behaviour.
    * The fast implementation is intended for real usage.
    .
    Status:
    .
    * The interface is getting stable. You can expect more functionality and minor changes on current functionality.
    * There are test cases for the first half of the interface.
    Both implementations fulfil the test cases.
    * The pure implementation is ready.
    * The fast implementation is much faster than the pure implementation,
    but it is far from being as fast as possible.
    Probably it also leaks memory.
    .
    To see what is possible to do with lens references, look at the test cases in "Data.LensRef.Test"
    .
    For more information visit the following links:
    .
    * <http://www.haskell.org/haskellwiki/LGtk haskell.org wiki page>
    * <http://lgtk.wordpress.com/ Wordpress blog>
    * <https://github.com/divipp/lensref GitHub repository>
    * <http://hackage.haskell.org/package/lensref Haddock documentation (this page)>
stability:          experimental
license:            BSD3
license-file:       LICENSE
author:             Péter Diviánszky
homepage:           http://www.haskell.org/haskellwiki/LGtk
bug-reports:        https://github.com/divipp/lensref/issues
maintainer:         divipp@gmail.com
cabal-version:      >= 1.8
build-type:         Simple

source-repository head
  type:             git
  location:         https://github.com/divipp/lensref.git

Flag Pure
  Description:      Use the pure but slow implementation
  Default:          False


library

  hs-source-dirs:
                    src
  build-depends:
                    base < 5
                  , transformers >= 0.3 && < 0.5
                  , mtl >= 2 && < 2.3
                  , monad-control == 0.3.*
                  , operational == 0.2.*
                  , lens == 4.1.*
                  , containers == 0.5.*

  exposed-modules:
                    Data.LensRef
                    Data.LensRef.Common
                    Data.LensRef.TestEnv
                    Data.LensRef.Test
                    Data.LensRef.Pure
                    Data.LensRef.Fast
                    Data.LensRef.Default
  if flag(Pure)
    cpp-options:
                    -D__PURE__

  ghc-options: 
                    -threaded
                    -Wall 
                    -fno-warn-incomplete-patterns 
                    -fno-warn-name-shadowing 
                    -fno-warn-missing-signatures 
                    -fno-warn-orphans
                    -fno-warn-type-defaults