合约结构:
总体流程:
调用 BaalSummoner 合约的 summonBaal 或者 summonBaalFromReferrer 方法,创建 Baal(主治理合约) 合约。
在调用 summonBaal 方法时,会部署 Share、Loot 和 Safe 合约并设置到 Baal 合约中。在合约中,不设置 Member 这个属性,只检查是否持有 Share token,如果持有,那么就可以投票。
下图中,圆圈代表合约
Shamans 是 DAO 的管理员,管理员分为 Admin、 Manager、 Gonvernor,拥有设置治理、 Mint 和销毁 Share,Loot Token 等功能。
一些重要的合约方法: