Rust では所有権と借用, そしてライフタイムという概念があるため、値そのものを取り扱うより参照 (借用) を取り扱うことが難しくなりがちです。 特に関数から参照を返そうとすると、そこにはライフタイムの概念が絡んできます。 例えば下記のように関数内から文字列スライスを返す場合、 fn f() -> &str { "str" } このコードはこのままではコンパイルできません。 コンパイラはこのようなメッセージを出してきます、 missing lifetime specifier. expected named lifetime parameter. help: consider using t…