marker trait

From, Into

Intoは、一般に関数が受け取る引数を柔軟にするために用いられる。

Fromは、ある型から別の型のインスタンスを生成するために用いられる。

適切なFromの実装があれば、標準ライブラリが自動的に対応するIntoトレイトを実装してくれる。

IntoやFromは変換が安価であることを保証しない。(対称的にAsRefやAsMutなどの変換は安価であることが期待されている) つまりヒープを確保したり、コピーしたりしてもよい。

?演算子はFromとIntoを用いて、特定のエラー型を一般的なエラー型に必要に応じて変換することで複数の失敗の仕方がありうる関数のコードを綺麗に書けるようにしてくれる。