管道流到动作列表

时间:2014-10-29 14:25:18

标签: haskell conduit

我有:

  • 作为来源(responseBody response)
  • 的无限网络流
  • 解析器:myParser = many1 parseOneObj
  • 类型的Parser [MyObj]

我想处理每个对象(例如在屏幕上打印)。

我被困在这里。我尝试过这样的事情:

responseBody response C.$$++ sinkParser myParser
                      C.$$-- CL.mapM_ B.putStrLn

显然甚至没有编译。有人可以帮我找到正确(有效)处理这个问题的正确方法吗?例如,最后,我想有很多线程来处理数据库中对象的推送。

目前,我正在为俄罗斯方块类型而苦苦挣扎,任何帮助都将受到欢迎!谢谢!


未来任何人的完整解决方案:

responseBody response C.$$++ conduitParser parseOneObj 
                      C.=$ CL.mapM_ (liftIO . (B.putStrLn . snd))

1 个答案:

答案 0 :(得分:2)

我建议首先使用many1 parseOneObj将打败任何流式传输的可能性。相反,我会使用conduitParser parseOneObj。然后,您可能只需要将C.$$--替换为C.=$