1

我正在抓取一些网站的源代码并Category从中收集类型的项目:

catsSource :: Source IO Category

下一步是编写公司收集器(项目类型Company)。公司收集器需求类别:对于每个Category输入,应该生成几个公司,一个接一个。换句话说,它应该“屈服” Company,而不是[Company]。这个任务我需要什么?导管还是棘手的来源?如果是来源,它应该如何从中获取类别catsSource?如果管道被发现时它应该如何通过(“屈服”)公司前进?

在这里清除我的问题是一种尝试(不通过类型检查):

import qualified Data.Conduit.List as CL

companiesFromCategory cat = [Company "foo", Company "bar"]

companies :: Conduit Category IO Company
companies = CL.fold . (CL.map companiesFromCategory)
4

1 回答 1

3

解决方案是使用concatMap

companies = CL.concatMap companiesFromCategory
于 2014-04-16T08:03:02.077 回答