Elm简写为Union Type提供类型变量

ced*_*edd 1 elm

我有这样的榆树类型

type ValueAndContext valueType contextType
    = ValueAndContext valueType contextType
Run Code Online (Sandbox Code Playgroud)

我想创建一个具有特定类型参数的新类型,以保存键盘点击和屏幕像素,也许是这样

type IntWithStringContext = ValueAndContext Int String
Run Code Online (Sandbox Code Playgroud)

我可以创建一个这样的类型别名,但它需要我引入一个额外的变量来保存类型,所以不保存那么多的水龙头或像素.

type alias IntWithStringContext =
  { update: ValueAndContext Int String }
Run Code Online (Sandbox Code Playgroud)

我认为榆树没有其他任何可能,但欢迎任何想法.

Cha*_*ert 5

当然,你与第一个例子非常接近.你可以使用这样的别名:

type alias IntWithStringContext = ValueAndContext Int String
Run Code Online (Sandbox Code Playgroud)

也许更常见的是看到记录类型的类型别名,但您也可以为联合类型添加别名.

编辑

这将为类型名称添加别名,但您仍然必须使用原始构造函数:

get : IntWithStringContext
get = ValueAndContext 1 "hello"
Run Code Online (Sandbox Code Playgroud)