packages feed

fclabels-monadlib (empty) → 0.0.1

raw patch · 4 files changed

+67/−0 lines, 4 filesdep +basedep +fclabelsdep +haskell98setup-changed

Dependencies added: base, fclabels, haskell98, monadLib

Files

+ LICENSE view
@@ -0,0 +1,27 @@+Copyright (c) Bardur Arantsson 2010++All rights reserved.++Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions+are met:+1. Redistributions of source code must retain the above copyright+   notice, this list of conditions and the following disclaimer.+2. Redistributions in binary form must reproduce the above copyright+   notice, this list of conditions and the following disclaimer in the+   documentation and/or other materials provided with the distribution.+3. Neither the name of the author nor the names of his contributors+   may be used to endorse or promote products derived from this software+   without specific prior written permission.++THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE+ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF+SUCH DAMAGE.
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ fclabels-monadlib.cabal view
@@ -0,0 +1,21 @@+Name:                fclabels-monadlib+Version:             0.0.1+Synopsis:            MonadLib monadic interface for the "fclabels" package.+Description:         A MonadLib-compatible monadic interface for the "fclabels" package.+License:             BSD3+License-file:        LICENSE+Category:            Data+Cabal-version:       >= 1.6+Build-type:          Simple+Author:              Bardur Arantsson+Maintainer:          Bardur Arantsson <bardur@scientician.net>++Library+        build-depends:       base == 4.*,+                             haskell98,+                             monadLib == 3.6.*,+                             fclabels == 0.11.*+        extensions:          TypeOperators+        ghc-options:         -Wall+        hs-source-dirs:      src+        exposed-modules:     Data.Record.Label.MonadLib
+ src/Data/Record/Label/MonadLib.hs view
@@ -0,0 +1,17 @@+module Data.Record.Label.MonadLib ( module L+                                  , modM+                                  , setM+                                  , getM+                                  ) where++import Data.Record.Label as L hiding (modM, setM, getM)+import MonadLib.Monads++modM :: StateM m f => (f :-> a) -> (a -> a) -> m ()+modM l f = liftM (modL l f) get >>= set++setM :: StateM m f => (f :-> a) -> a -> m ()+setM l a = liftM (setL l a) get >>= set++getM :: StateM m f => (f :-> a) -> m a+getM l = liftM (getL l) get