gpt4 book ai didi

Haskell:多个文件的酸性状态?

转载 作者:行者123 更新时间:2023-12-01 11:24:40 24 4
gpt4 key购买 nike

我有这样的文件结构:

--- Database.hs ---
data Database = ...
...

--- User.hs ---
import Database
addUser :: Update Database ()
...

--- Post.hs
import Database
addPost :: Update Database ()
...

问题是我需要在 User.hsPost.hs 中调用 makeAcidic ''Database [...]使它们的函数呈酸性,但 makeAcidic 同时为 Database 生成 IsAcidic 实例,因此 GHC 会提示重复的实例声明。

最佳答案

好吧,我想通了。只需将定义与模板 Haskell 分开即可:

--- Database/Types.hs ---
data Database = ...
...

--- Database.hs ---
import Database.Types
import User
import Post
makeAcidic ''Database [addUser, addPost]

--- User.hs ---
import Database.Types
addUser :: Update Database ()
...

--- Post.hs ---
import Database.Types
addPost :: Update Database ()
...

关于Haskell:多个文件的酸性状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38579990/

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