{-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE LambdaCase #-} import Control.Exception (bracket) import Control.Monad.Except import qualified Database.PostgreSQL.Typed as PG import ICAFocus import ICAFocus.Get import DBConfig PG.useTPGDatabase myPGDatabase main = bracket (PG.pgConnect myPGDatabase) PG.pgDisconnect $ \pg -> do let lök_id = 1282116 (runExceptT $ getProduct pg lök_id) >>= \case Right lök -> putStrLn $ "Lökat " ++ show lök Left löklös -> putStrLn $ "Löklös? " ++ show löklös