Configuration de l'IDE Rust

La prise en charge de Rust dans Android par l'IDE repose 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 saisie semi-automatique du code ou l'accès à la définition. Avant de commencer, consultez la documentation de démarrage rapide de rust-analyzer pour savoir comment configurer votre IDE ou votre éditeur afin d'utiliser le protocole rust-analyzer.

Android fournit la configuration qui permet à rust-analyzer de comprendre comment les modules Android Rust sont créés. Cela est décrit 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 de l'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 prédéfinie de rust-analyzer est disponible dans l'arborescence à l'adresse prebuilts/rust/linux-x86/stable/rust-analyzer.