http://csharp.keicode.com/basic/csharp7-deconstruct.php
オブジェクトをタプルに代入する式を書いたときに、自動的にDeconstructという名前のメソッドが呼び出されてタプルが戻されるという機能のこと。
動くかどうか確認してないが、こんな感じ。
class MyPoint
{
public int _x, _y;
public void Deconstruct(out int x, out int y)
{
x = _y;
y = _y;
}
}
var myPointObj = new MyPoint() { _x = 10, _y = 20 };
var tapple = myPointObj;
Console.WriteLine($"{tapple.x}, {tapple.y}");