gpt4 book ai didi

haskell - 持久过滤器 : And operation in filters when using Or

转载 作者:行者123 更新时间:2023-12-01 13:50:39 26 4
gpt4 key购买 nike

Persistent 有一个 OR 过滤器 ||. 但它似乎没有相应的 &&. 我想做一些像 A && (B || C) && (D || E) 我不确定最简洁的方法。

我想我可以创建所有组合,如 (A && B && D) || (A && C && D) || (A && B && E) || (A && C && E)。即使对于这个简单的例子,它也变得相当笨拙。不确定是否有更好的方法来使用 persistent 执行此操作。

当我这样做时代码会编译(在 selectList 内)[A]++ ([B] ||. [C]) 等 但不确定是否它相当于我想要的。

谢谢!

最佳答案

您可以使用 ++ <> to 和过滤器列表在一起。

来自Persistent manual :

people <- selectList [PersonAge >. 25, PersonAge <=. 30] []
liftIO $ print people

The list of filters is ANDed together, so that our constraint means "age is greater than 25 AND age is less than or equal to 30". We’ll describe ORing later.

关于haskell - 持久过滤器 : And operation in filters when using Or,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31975492/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com