(=ExternPreludeが使われる)ではExternPrelude仮想モジュールが解決する「クレート名」とは何でしょうか。具体的には以下が使われます。bar)最後の規則のおかげで、以下のようなコードがRust2015/2018マイグレーションコードとして許されることになります。いう構文が導入されています。似ていますが、上記のようにExternPreludeに別名を導入する追加効果があります。始まるパスを内部的に生成するとします。しておけばいいわけです。はじまるパスは以下の条件で特殊な動作をします。(=今コンパイルしようとしているクレートがRust2018)当該パスがRust2015クレートに由来しているこの場合は仮想Rust2015モードと呼ばれ、絶対パス(Rust2015)とExternPreludeパス(Rust2018)の両方に解決されます。そのための仮想モジュールがCrateRootAndExternPreludeです。CurrentScope仮想モジュールCurrentScopeは通常の方法でパスを解決します。単一セグメントからなる単独インポートだった場合に使われます。してインポートするという形で表現します。してインポートすると表記できるため使われません。仮想モジュールがからむのでやや特殊です。パス解決の全体の流れはシンプルです。型名前空間で解決します。