κeenです。 Rustに限った話ではないのですが、よくRustを触ってみた人がシャドイングが気持ち悪いという反応をしているのを見かけるのでシャドイングがどういう機能かを解説します。 Rustのシャドイング まずは「気持ち悪い」と言われることもあるRustのシャドイングについて。 Rustでは以下のコードが合法です。 let input = "42"; let input = input.parse::<i32>().unwrap(); // 以後、i32 型のinputが見える let result = input * 2; input という名前の変数を2回導入しています。 最初の input は &str 型で、2つ目の input は i32 型です。 このコード以降では後に定義した i32 型の方の input が有効になっています。 後から導入した変数が先にあった変数を覆い隠す
![シャドイングの嬉しさ | κeenのHappy Hacκing Blog](https://cdn-ak-scissors.b.st-hatena.com/image/square/98400008265a6f0f6f1af8438e230f90610900f9/height=288;version=1;width=512/https%3A%2F%2Fkeens.github.io%2Fimages%2Fogp%2Fpost%2Fshadoingunoureshisa.png)