在我的模型中,我试图定义一个非通用模板,该模板具有一个采用通用参数的选择。我不知道该怎么做。可能吗如果没有,为什么?
答案 0 :(得分:1)
这是不可能的,故意这样做。 DAML的设计原则之一是,当您签订合同时,您会确切地知道您所同意的内容。
想象一下,资产有一个类型类Transferrable
,我发布了一个包含一个空类型类Stealable
和模板PermissionToSteal
的包:
class (Template a, Transferrable a) => Stealable a where
template PermissionToSteal
with
owner : Party
thief : Party
where
signatory owner, thief
controller thief can
(Stealable a) => Steal : (ContractId a)
with
asset : a
do
transfer asset thief
我可以说服您签署owner
这样的合同,因为您在没有Stealable
实例的情况下感到安全。
但是如果我现在上传另一个带有instance Stealable Cash
的软件包怎么办?