我有类型
let Resource = \(a : Type) ->
{ name : Text
, type : Text
, properties : a
}
和函数foo : InstanceTemplateProperties -> Properties
。
我需要创建一个函数Resource InstanceTemplateProperties -> Resource Properties
。
我可以写成
\(p : Resource InstanceTemplateProperties) ->
{ name = p.name
, type = p.type
, properties = foo p.properties
} : Resource Properties
但是看起来确实很麻烦。有没有更简单,更惯用的方式做到这一点?
您可以使用/
将更新的属性合并到原始属性中。
(\p : Resource InstanceTemplateProperties) ->
p / {properties = foo p.properties)