如何检测管道输入的结束?

时间:2013-07-29 11:50:05

标签: haskell eof conduit

我正在尝试使用network-conduit作为(补丁)HaskellNet IMAP的后端。其中一个required operations是检测流是否打开。目前我正在使用

isOpen :: (Monad m) => ConduitM i o m Bool
isOpen = await >>= maybe (return False) ((True <$) . leftover)

这是正确的,还是有更好的方法?

1 个答案:

答案 0 :(得分:1)

这是正确的,唯一可能的改进是你可以使用peek辅助函数,但你在这里有什么好。