Configuration de l'IDE Rust

La compatibilité de l'IDE avec Rust dans Android s'appuie sur rust-analyzer. rust-analyzer est un protocole de serveur de langage utilisé par votre IDE pour comprendre la structure du code et fournir des fonctionnalités telles que la complétion de code ou l'accès à la définition. Avant de commencer, recherchez dans la documentation de démarrage rapide de rust-analyzer comment configurer votre IDE ou votre éditeur pour utiliser le protocole rust-analyzer.

Android fournit la configuration qui permet à rust-analyzer de comprendre comment les modules Android Rust sont créés. Cette opération est décrite dans le fichier rust-project.json généré par Soong. Pour certains IDE tels que Visual Studio Code, ce fichier est généré par aidegen, à l'aide des arguments d'option -l r (pour sélectionner Rust comme langage). Si vous utilisez un autre IDE, générez manuellement un fichier rust-project.json avec le code suivant :

// Generates rust-project.json in out/soong/
SOONG_GEN_RUST_PROJECT=1 m nothing
// Creates a symbolic link
ln -s $ANDROID_BUILD_TOP/out/soong/rust-project.json $ANDROID_BUILD_TOP

Une version stable et prédéfinie de rust-analyzer est disponible dans l'arborescence sur prebuilts/rust/linux-x86/stable/rust-analyzer.