我们有以下DAML合同:
数据=选项A|选项B派生(Show,Eq)
data Details = Details with id: Text name: Text state: Text
包含a: Party b: Party的主模板
c: Something
d: Details我知道我们可以对'a‘和'b’执行以下操作:
字段:{ a: daml.party(a),b: daml.party(b),}但是我怎么写c和d呢?
发布于 2021-04-01 13:15:50
对于d,您可以使用daml.record,如下所示:
daml.record({
id: daml.text("youridhere"),
name: daml.text("yournamehere"),
state: daml.text("yourstatehere")
})对于c,您的类型定义中存在一个问题。构造函数需要具有不同的名称,而在您的示例中,它们都称为Option。您可以通过重命名一个或两个来修复此问题,例如,
data Something = OptionA A | OptionB B deriving(Show, Eq)要构造一个值,您可以使用daml.variant
daml.variant("OptionA", yourahere)https://stackoverflow.com/questions/66895911
复制相似问题