From 06e6471fc3e4ff70b4ce7180649d7da5565c6ee2 Mon Sep 17 00:00:00 2001 From: Jean-Paul Calderone <exarkun@twistedmatrix.com> Date: Tue, 4 May 2021 15:43:23 -0400 Subject: [PATCH] split a bit of this expression into a separate function no point really except maybe it is easier to read? I was trying to remove a level of nesting but I failed. --- src/PaymentServer/Persistence.hs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/PaymentServer/Persistence.hs b/src/PaymentServer/Persistence.hs index 8ec3753..8e0b25e 100644 --- a/src/PaymentServer/Persistence.hs +++ b/src/PaymentServer/Persistence.hs @@ -467,13 +467,16 @@ upgradeSchema targetVersion conn = do errOrCurrentVersion <- readVersion conn case errOrCurrentVersion of Left err -> return $ Left err - Right currentVersion -> + Right currentVersion -> perhapsUpgrade targetVersion currentVersion + + where + perhapsUpgrade :: Int -> Int -> IO (Either UpgradeError ()) + perhapsUpgrade targetVersion currentVersion = case compareVersion targetVersion currentVersion of Lesser -> return $ Left DatabaseSchemaTooNew Equal -> return $ Right () Greater -> runUpgrades currentVersion targetVersion - where runUpgrades :: Int -> Int -> IO (Either UpgradeError ()) runUpgrades currentVersion targetVersion = let -- GitLab