diff options
Diffstat (limited to 'src/compiler/GF/Infra')
| -rw-r--r-- | src/compiler/GF/Infra/UseIO.hs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/compiler/GF/Infra/UseIO.hs b/src/compiler/GF/Infra/UseIO.hs index 0af26efa7..de3182f0e 100644 --- a/src/compiler/GF/Infra/UseIO.hs +++ b/src/compiler/GF/Infra/UseIO.hs @@ -139,6 +139,8 @@ instance Monad IOE where appIOE $ err raise f x -- f :: a -> IOE a fail = raise +maybeIO io = either (const Nothing) Just `fmap` liftIO (try io) + useIOE :: a -> IOE a -> IO a useIOE a ioe = appIOE ioe >>= err (\s -> putStrLn s >> return a) return |
