2016-10-19 7 views
0

私は、多くの場合、ATSに次の行のようなコードを参照してください。g0ofg1の意味はなんですか?

val xs = g0ofg1(xs) 

機能g0ofg1は、鋳造のいくつかの種類のように見えます。それは実際に何をしていますか?

答えて

2

これはオーバーロードされたシンボルです。

ATSには、インデックス付きおよびインデックスなしのバリアントが存在する多くのタイプがあります。例えば

  • 、およびint(ソートintの一部iため)int(i)が存在します。どちらの型も整数用ですが、前者はintソートでインデックスされています。
  • 別の例:string(単なる文字列)とstring(n)(長インデックス列)
g0ofg1

は非インデックス一つにインデックス付きのタイプを変換するためのものです。それはcastfnなので、この操作にはランタイムコストがかかっていません。

g1ofg0は、他の方向に進むためのものです。インデックスされていないインデックスタイプからです。

関連する問題