From 780cfe4fc3b59f76b23ec18d8e798d300e9a7e7e Mon Sep 17 00:00:00 2001 From: Sam Truzjan Date: Sat, 14 Dec 2013 19:52:03 +0400 Subject: Override default fixity for Get operators --- src/Data/BEncode.hs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/Data/BEncode.hs b/src/Data/BEncode.hs index d1d153b..8768dac 100644 --- a/src/Data/BEncode.hs +++ b/src/Data/BEncode.hs @@ -683,21 +683,29 @@ field m = Get $ do f <$>! k = f <$> field (req k) {-# INLINE (<$>!) #-} +infixl 4 <$>! + -- | Shorthand for /f <$> optional (field (req k))/. (<$>?) :: BEncode a => (Maybe a -> b) -> BKey -> Get b f <$>? k = f <$> optional (field (req k)) {-# INLINE (<$>?) #-} +infixl 4 <$>? + -- | Shorthand for /f <*> field (req k)/. (<*>!) :: BEncode a => Get (a -> b) -> BKey -> Get b f <*>! k = f <*> field (req k) {-# INLINE (<*>!) #-} +infixl 4 <*>! + -- | Shorthand for /f <*> optional (field (req k))/. (<*>?) :: BEncode a => Get (Maybe a -> b) -> BKey -> Get b f <*>? k = f <*> optional (field (req k)) {-# INLINE (<*>?) #-} +infixl 4 <*>? + -- | Run a 'Get' monad. fromDict :: forall a. Typeable a => Get a -> BValue -> Result a fromDict m (BDict d) = evalStateT (runGet m) d -- cgit v1.2.3