From 25f64e0874cfc5296a8d7080adb3d9a849d92044 Mon Sep 17 00:00:00 2001 From: Denis Tereshkin Date: Mon, 12 Jun 2023 10:30:31 +0700 Subject: [PATCH] Some strictness annotations --- src/HistoryProviderServer.hs | 30 +++++++++++++++--------------- src/Transaq.hs | 8 ++++---- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/src/HistoryProviderServer.hs b/src/HistoryProviderServer.hs index bb5ee1d..97af53f 100644 --- a/src/HistoryProviderServer.hs +++ b/src/HistoryProviderServer.hs @@ -100,11 +100,11 @@ periodToSeconds PeriodMonth = 60 * 60 * 24 * 30 data TickerRequest = TickerRequest { - rqTicker :: T.Text, - rqStartTime :: UTCTime, - rqEndTime :: UTCTime, - rqPeriod :: Period, - rqCompression :: Maybe T.Text + rqTicker :: !T.Text, + rqStartTime :: !UTCTime, + rqEndTime :: !UTCTime, + rqPeriod :: !Period, + rqCompression :: !(Maybe T.Text) } deriving (Show, Eq) data QHPRequest = @@ -113,8 +113,8 @@ data QHPRequest = deriving (Show, Eq) data QHPResponse = - QHPBarsResponse [Bar] - | QHPTickersListResponse [TickerId] + QHPBarsResponse ![Bar] + | QHPTickersListResponse ![TickerId] instance FromJSON QHPRequest where parseJSON = withObject "Request" $ \v -> @@ -164,12 +164,12 @@ timeParse = do data Env = Env { - eRun :: TVar Bool - , eContext :: Context - , eEndpoint :: T.Text - , eLogger :: LogAction IO Message - , eTxml :: TXMLConnectorHandle - , eTisHandle :: TickerInfoServerHandle + eRun :: !(TVar Bool) + , eContext :: !Context + , eEndpoint :: !T.Text + , eLogger :: !(LogAction IO Message) + , eTxml :: !TXMLConnectorHandle + , eTisHandle :: !TickerInfoServerHandle } newtype App a = App { unApp :: ReaderT Env IO a } @@ -238,13 +238,13 @@ workThread = do Right request -> do response <- handleRequest sender request sendResponseWithDelimiter sock sender response - Left err -> log Warning "HistoryProviderServer.WorkThread" $ "Unable to parse request: " <> T.pack err + Left err -> log Warning "HistoryProviderServer.WorkThread" $ "Unable to parse request" (sender:rawRq:_) -> case eitherDecode $ BL.fromStrict rawRq of Right request -> do response <- handleRequest sender request sendResponse sock sender response - Left err -> log Warning "HistoryProviderServer.WorkThread" $ "Unable to parse request: " <> T.pack err + Left err -> log Warning "HistoryProviderServer.WorkThread" $ "Unable to parse request" _ -> log Warning "HistoryProviderServer.WorkThread" "Unable to parse request" liftIO $ readTVarIO runVar liftIO $ close sock diff --git a/src/Transaq.hs b/src/Transaq.hs index 48f56d0..ad0c223 100644 --- a/src/Transaq.hs +++ b/src/Transaq.hs @@ -371,10 +371,10 @@ data ResponseCandlesStatus = data ResponseCandles = ResponseCandles { - cPeriodId :: Int - , cStatus :: ResponseCandlesStatus - , cSecurity :: SecurityId - , cCandles :: [Candle] + cPeriodId :: !Int + , cStatus :: !ResponseCandlesStatus + , cSecurity :: !SecurityId + , cCandles :: ![Candle] } deriving (Show, Eq, Ord) uname :: String -> QName