Repository : ssh://darcs.haskell.org//srv/darcs/packages/vector

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/f1b6596a629d59e2a3c9397c6777568b149a1db7

>---------------------------------------------------------------

commit f1b6596a629d59e2a3c9397c6777568b149a1db7
Author: Roman Leshchinskiy <[email protected]>
Date:   Tue Aug 30 19:23:47 2011 +0000

    Add MonadPlus instance

>---------------------------------------------------------------

 Data/Vector.hs |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/Data/Vector.hs b/Data/Vector.hs
index a628871..7fac580 100644
--- a/Data/Vector.hs
+++ b/Data/Vector.hs
@@ -156,7 +156,7 @@ import           Data.Vector.Mutable  ( MVector(..) )
 import           Data.Primitive.Array
 import qualified Data.Vector.Fusion.Stream as Stream
 
-import Control.Monad ( liftM, ap )
+import Control.Monad ( MonadPlus(..), liftM, ap )
 import Control.Monad.ST ( ST )
 import Control.Monad.Primitive
 
@@ -275,6 +275,13 @@ instance Monad Vector where
   {-# INLINE (>>=) #-}
   (>>=) = flip concatMap
 
+instance MonadPlus Vector where
+  {-# INLINE mzero #-}
+  mzero = empty
+
+  {-# INLINE mplus #-}
+  mplus = (++)
+
 instance Applicative.Applicative Vector where
   {-# INLINE pure #-}
   pure = singleton



_______________________________________________
Cvs-libraries mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-libraries

Reply via email to