sqd*_*sqd 3 haskell acid-state
我有这样的文件结构:
--- Database.hs ---
data Database = ...
...
--- User.hs ---
import Database
addUser :: Update Database ()
...
--- Post.hs
import Database
addPost :: Update Database ()
...
Run Code Online (Sandbox Code Playgroud)
问题是,我要叫makeAcidic ''Database [...]两个User.hs,并Post.hs让自己的职能酸性,但makeAcidic在同一时间产生IsAcidic的实例为Database这样GHC抱怨重复实例声明.
好的,我明白了.只需将定义与Template 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 ()
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
152 次 |
| 最近记录: |