有没有办法从数据中使用findIndex方法。设置为当前的haskell平台?
-
21-12-2019 - |
题
我最近开始研究一些需要使用集合的代码。所以我去了Hoogle并搜索了一个现有的解决方案,我在模块中找到了这个解决方案 数据。套装.不幸的是,Hoogle打开了containers-0.5.3.1包中包含的集合的文档。这个版本包含了方便的findIndex方法,我计划了我的程序。
但是Haskell平台只附带容器-0.5.0.0,其中findIndex不可用。由于我可能只使用Haskell平台附带的库,因此我正在寻找一种方法来包含此功能或自己定义它。直接复制方法源代码 http://hackage.haskell.org/package/containers-0.5.3.1/docs/src/Data-Set.html 显然没有工作。我希望你能帮助我找到解决我的问题的方法。
非常感谢!.
解决方案
你可以用 splitMember
:
lookupIndex :: (Ord a) => a -> Set a -> Maybe Int
lookupIndex x s
| found = Just $ size l
| otherwise = Nothing
where (l, found, _) = splitMember x s
不隶属于 StackOverflow