You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
97 lines
2.9 KiB
97 lines
2.9 KiB
9 years ago
|
diff --git a/hs/DBus/Connection/Authentication.hs b/hs/DBus/Connection/Authentication.hs
|
||
|
index b909a38..c33d311 100644
|
||
|
--- a/hs/DBus/Connection/Authentication.hs
|
||
|
+++ b/hs/DBus/Connection/Authentication.hs
|
||
|
@@ -25,3 +25,4 @@ module DBus.Connection.Authentication
|
||
|
import Prelude hiding (getLine, head)
|
||
|
-import Control.Monad (liftM)
|
||
|
+import Control.Applicative
|
||
|
+import Control.Monad
|
||
|
import qualified Data.ByteString
|
||
|
@@ -58,2 +59,9 @@ data Auth a = Auth
|
||
|
|
||
|
+instance Functor Auth where
|
||
|
+ fmap = liftM
|
||
|
+
|
||
|
+instance Applicative Auth where
|
||
|
+ pure = return
|
||
|
+ (<*>) = ap -- defined in Control.Monad
|
||
|
+
|
||
|
instance Monad Auth where
|
||
|
diff --git a/hs/DBus/Introspection.hs b/hs/DBus/Introspection.hs
|
||
|
index 96ff4a3..da82812 100644
|
||
|
--- a/hs/DBus/Introspection.hs
|
||
|
+++ b/hs/DBus/Introspection.hs
|
||
|
@@ -29,3 +29,4 @@ module DBus.Introspection
|
||
|
) where
|
||
|
-import Control.Monad ((>=>))
|
||
|
+import Control.Applicative
|
||
|
+import Control.Monad
|
||
|
import Control.Monad.ST (runST)
|
||
|
@@ -176,2 +177,9 @@ newtype XmlWriter a = XmlWriter { runXmlWriter :: Maybe (a, Text) }
|
||
|
|
||
|
+instance Functor XmlWriter where
|
||
|
+ fmap = liftM
|
||
|
+
|
||
|
+instance Applicative XmlWriter where
|
||
|
+ pure = return
|
||
|
+ (<*>) = ap -- defined in Control.Monad
|
||
|
+
|
||
|
instance Monad XmlWriter where
|
||
|
diff --git a/hs/DBus/Types/Internal.hs b/hs/DBus/Types/Internal.hs
|
||
|
index 7f5d9c5..7c73afe 100644
|
||
|
--- a/hs/DBus/Types/Internal.hs
|
||
|
+++ b/hs/DBus/Types/Internal.hs
|
||
|
@@ -5,2 +5,3 @@
|
||
|
{-# LANGUAGE IncoherentInstances #-}
|
||
|
+{-# LANGUAGE FlexibleContexts #-}
|
||
|
|
||
|
diff --git a/hs/DBus/Util/MonadError.hs b/hs/DBus/Util/MonadError.hs
|
||
|
index 33b51ed..ef01df2 100644
|
||
|
--- a/hs/DBus/Util/MonadError.hs
|
||
|
+++ b/hs/DBus/Util/MonadError.hs
|
||
|
@@ -23,2 +23,6 @@ module DBus.Util.MonadError
|
||
|
) where
|
||
|
+
|
||
|
+import Control.Applicative
|
||
|
+import Control.Monad
|
||
|
+
|
||
|
newtype ErrorM e a = ErrorM { runErrorM :: Either e a }
|
||
|
@@ -30,2 +34,6 @@ instance Functor (ErrorM e) where
|
||
|
|
||
|
+instance Applicative (ErrorM e) where
|
||
|
+ pure = return
|
||
|
+ (<*>) = ap -- defined in Control.Monad
|
||
|
+
|
||
|
instance Monad (ErrorM e) where
|
||
|
@@ -41,2 +49,9 @@ newtype ErrorT e m a = ErrorT { runErrorT :: m (Either e a) }
|
||
|
|
||
|
+instance Monad m => Functor (ErrorT e m) where
|
||
|
+ fmap = liftM
|
||
|
+
|
||
|
+instance Monad m => Applicative (ErrorT e m) where
|
||
|
+ pure = return
|
||
|
+ (<*>) = ap -- defined in Control.Monad
|
||
|
+
|
||
|
instance Monad m => Monad (ErrorT e m) where
|
||
|
diff --git a/hs/DBus/Wire/Internal.hs b/hs/DBus/Wire/Internal.hs
|
||
|
index b386eec..512ff1a 100644
|
||
|
--- a/hs/DBus/Wire/Internal.hs
|
||
|
+++ b/hs/DBus/Wire/Internal.hs
|
||
|
@@ -19,3 +19,4 @@
|
||
|
module DBus.Wire.Internal where
|
||
|
-import Control.Monad (liftM, when, unless)
|
||
|
+import Control.Applicative
|
||
|
+import Control.Monad hiding (void)
|
||
|
|
||
|
@@ -96,2 +97,9 @@ newtype Wire s a = Wire
|
||
|
|
||
|
+instance Functor (Wire s) where
|
||
|
+ fmap = liftM
|
||
|
+
|
||
|
+instance Applicative (Wire s) where
|
||
|
+ pure = return
|
||
|
+ (<*>) = ap -- defined in Control.Monad
|
||
|
+
|
||
|
instance Monad (Wire s) where
|