私は多くのIOを行う主な機能を持っています。しかし、ある時点で、not (null shouldBeNull)
のような変数をチェックして、Linuxのexitcode 1で続行せずにプログラム全体を終了し、エラーメッセージを出力したいとします。条件が与えられたときにhaskellでmainを終了するには
私はif
であることを置くようerror "..."
で遊んで試してみた:。
if (not (null shouldBeNull)) error "something bad happened" else putStrLn "ok"
が、私はparse error (possibly incorrect indentation)
:(を取得
ここでは、変更されたスニペットです
main :: IO ExitCode
main = do
--Get the file name using program argument
args <- getArgs
file <- readFile (args !! 0)
putStrLn("\n")
-- ... (some other io)
-- [DO A CHECK HERE], exit according to check..
-- ... (even more io)
echotry <- system "echo success"
rmtry <- system "rm -f test.txt"
system "echo done."
。
お気づきのように、私が入れたところでチェックしたいと思います[DO A CHECK HERE]
上記のコメント...
ありがとうございました!
かは、重要でない "OK"、 '輸入Control.Monad'と' badThingHappened exitFailure'をプリントアウトすることがありません。 –