g0ofg1 是什么意思?
What is the meaning of g0ofg1?
我经常在 ATS 中看到如下代码:
val xs = g0ofg1(xs)
函数 g0ofg1 看起来像是某种转换。它实际上有什么作用?
这是一个重载符号。
ATS 中有许多类型,存在索引和非索引变体。
- 例如,存在
int(i)
(对于某些 i
排序 int
)和 int
。两种类型都用于整数,但前者按 int
排序索引。
- 另一个例子:
string
(只是一个字符串)和string(n)
(长度索引字符串)
g0ofg1
用于将索引类型转换为非索引类型。这是一个 castfn,所以这个操作没有与之相关的运行时成本。
g1ofg0
用于另一个方向:从非索引类型到索引类型。
我经常在 ATS 中看到如下代码:
val xs = g0ofg1(xs)
函数 g0ofg1 看起来像是某种转换。它实际上有什么作用?
这是一个重载符号。
ATS 中有许多类型,存在索引和非索引变体。
- 例如,存在
int(i)
(对于某些i
排序int
)和int
。两种类型都用于整数,但前者按int
排序索引。 - 另一个例子:
string
(只是一个字符串)和string(n)
(长度索引字符串)
g0ofg1
用于将索引类型转换为非索引类型。这是一个 castfn,所以这个操作没有与之相关的运行时成本。
g1ofg0
用于另一个方向:从非索引类型到索引类型。