2016-05-20 15 views
0

私は理論を読んでいたし、パターンバインドをしましょう、誰かが例を説明できますか?

let {l1=x1:S1, l2=x2:S2} = E1 in (x1 x2) 

    // l1,l2 are lebels, x1,x2 are variables, S1 and S2 are types. 

は私が結合しましょう理解記録パターンで

let p = t in t //pattern binding 

例を以下の遭遇が、上記のフォームに慣れていないので、私は少し混乱しています。誰かが私に本当の例を与えて説明することができますか?私はオンラインで検索しましたが、上のようなパターンで束縛されていませんでした。スウィフトのために

+0

この中でどの言語? –

+0

@JohnColeman。これは特定の言語ではなく理論的な方法で書かれています。それで私は具体的な例が必要です。 :) – arslan

答えて

1

(と同じことは、たとえば、錆のための真のようです)あなたはこのようなものを使用することができます:ここで

let (x1, x2) = (0.5, 1) //where x1 would be Double, x2 would be Int based on type inference 

を、あなたは、一致するペアに値をバインドし、内すなわち最初の値角括弧内の左側は、右括弧内の最初の値にバインドされます。

その後、あなたは、X1またはX2を参照することにより、通常の定数のような結合の値を使用することができます。

print(x1) // prints 0.5 
関連する問題