X-Git-Url: http://gitweb.michael.orlitzky.com/?p=dead%2Fhalcyon.git;a=blobdiff_plain;f=src%2FTwitter%2FStatus.hs;fp=src%2FTwitter%2FStatus.hs;h=6ff7e6c1dba241880ed81d989f8bfa2f36f381f7;hp=ef4e1037b9ca54b212f5666d60271ff832468301;hb=cf0e5470657c80d2e4db116b309e8ca35b4136ad;hpb=9b6d95a82745ced2a58d9bc4ded555ee36b36673 diff --git a/src/Twitter/Status.hs b/src/Twitter/Status.hs index ef4e103..6ff7e6c 100644 --- a/src/Twitter/Status.hs +++ b/src/Twitter/Status.hs @@ -1,3 +1,5 @@ +{-# LANGUAGE NoMonomorphismRestriction #-} + -- | Functions and data for working with Twitter statuses. module Twitter.Status where @@ -5,7 +7,7 @@ where import Control.Applicative ((<$>), (<*>)) import Control.Monad (liftM) import Data.Aeson ((.:), FromJSON(..), Value(Object)) -import Data.Maybe (catMaybes, isJust) +import Data.Maybe (fromMaybe, mapMaybe, isJust) import Data.Monoid (mempty) import Data.String.Utils (join, splitWs) import Data.Text (pack) @@ -74,7 +76,7 @@ utc_time_to_rfc822 mtz utc = show_created_at :: Maybe TimeZone -> Status -> String show_created_at mtz = - (maybe "" id) . (fmap $ utc_time_to_rfc822 mtz) . created_at + (fromMaybe "") . (fmap $ utc_time_to_rfc822 mtz) . created_at -- | Returns a nicely-formatted String representing the given 'Status' -- object. @@ -121,7 +123,7 @@ parse_username word = -- | Parse all usernames of the form \@username from a status. parse_usernames_from_status :: Status -> [String] parse_usernames_from_status status = - catMaybes (map parse_username status_words) + mapMaybe parse_username status_words where status_words = splitWs (text status)