alias - 在这种情况下如何为记录创建别名?
问题描述
我有一个关于记录的问题:假设我有一个记录记录的函数,如下所示:
getId : { file | id : String } -> String
getId file = file.id
我可以传入这样{ id = "abcd", name = "hi.txt"}
的内容:因为它有一个id
. 到目前为止一切都很好。我的问题是:我可以在函数类型签名中为“文件”创建一个别名吗?那会是什么语法?
解决方案
您可以为这个可扩展记录定义一个别名,WithID
如下所示:
type alias WithID a = { a | id : String }
getId
现在您可以像这样更新签名:
getId : WithID a -> String
getId file = file.id
推荐阅读
- javascript - 用js旋转字体系列
- ansible - Ansible:- 使用以下 yaml 文件创建 LVM
- bash - 在bash中循环查找结果
- java - 如何根据条件向 2 个 kafka 主题发布消息 - 春天云流
- python - tensorflow在pycharm中找不到GPU
- c# - 如何在 Blazor 中设置 DateEdit 的 DateFormat?
- angularjs - 以角度搜索大数据的输入
- python - 如何将编码序列(可变长度)编码为 tf.from_generator 的输入?
- java - 用 gradle 和 shadow 制作一个可运行的大罐子
- wordpress - 在两列引导行中显示 Wordpress 帖子