タグ

2010年3月9日のブックマーク (1件)

  • Nobuhisa's diary

    F#には静的Duck Typingを行うための(非常にマイナーな)(そして難解な)仕組みがありますが、 プロパティ(setter)にアクセスする方法は少し特殊です。 マイナーすぎて多分ググってもほとんどヒットしないと思うので、一応サンプルを載せておきます。 結論から言うと、setterのシグネチャを指定する際には when ^a : (member set_MyProperty : int -> unit) のようにします。 これを応用して、色んな型の"Value"にアクセスするサンプルコードを書いてみました。 // 普通のプロパティを持つ普通のクラス type MyClass(value) = member val Value : int = value with get, set // 変更可能なラベルを持つレコード型 type MyRecord = { mutable Value :

    Nobuhisa's diary