diff --git a/Data/ASN1/Parse.hs b/Data/ASN1/Parse.hs index eeea2be..83bc80e 100644 --- a/Data/ASN1/Parse.hs +++ b/Data/ASN1/Parse.hs @@ -24 +24 @@ import Control.Monad.Error -import Control.Applicative ((<$>)) +import Control.Applicative ((<$>), Applicative) @@ -25,7 +25,7 @@ import Control.Applicative ((<$>)) -- | Parse ASN1 Monad newtype ParseASN1 a = P { runP :: ErrorT String (State [ASN1]) a } - deriving (Functor, Monad, MonadError String) + deriving (Functor, Applicative, Monad, MonadError String) -- | run the parse monad over a stream and returns the result and the remaining ASN1 Stream. runParseASN1State :: ParseASN1 a -> [ASN1] -> Either String (a,[ASN1])