当前在DAML中,if和else条件期望返回相同的输出。
如何返回不同的类型?
答案 0 :(得分:1)
您总是必须从两个分支中返回相同的类型。如果要返回不同的类型,您可以做的是改为在两个分支中使用Either A B
,在一种情况下使用Left a
,在另一种情况下使用Right b
。因此,举一个完整的例子,假设您在第一个分支中有一个if
和一个Int
,在第二个分支中有一个Text
,您可以执行以下操作:
ifClause : Either Int String
ifClause = if cond then Left 1 else Right "foobar"
答案 1 :(得分:0)
但是这个 如果返回,则将模板进行存档,而不允许执行其他数据