How is the Emacs support for this LSP implementation? Does it actually work comparably well to VS Code, or is it going to be like trying to use Emacs as a Java IDE back in the day: fighting your tooling constantly and getting little help from it.
The emacs support is great. I use emacs 'racer' and 'lsp' packages full time for development.
There are two popular emacs packages for rust-analyzer: lsp[0] and eglot[1]. lsp (language server protocol) package is the default for racer. Eglot has far more features and is correspondingly resource hungry.
Detailed type information has a super helpful impact on my ability to review Rust code in general. I find reviewing rust code much more productive when I can see what owns a variable, how long it lives, and how it's being used (immutable vs mutable). So yea, lsp or eglot. Super helpful.
I use rust-analyzer with Emacs every day for work. There was a small amount of initial setup time (one or two bugs that had to be fixed with line or two in the init file), and since then, I haven't had to do anything; it's just worked fine.
I use it in Emacs every day since a few years. It mainly works, but I still haven't figured out the best way to set the right feature flag combinations if I work in a crate that uses them a lot. In these cases, if some code requires a feature to be enabled, analyzer does nothing because it compiles with the feature disabled.
It's not bothering me that much that I'd find a solution, because I don't need the help of analyzer in crates that I maintain anymore...
Anecdote: it worked fine for me in spacemacs. I switched from spacemacs to VSCode because the latter's vi emulation was better, not because r-a didn't work well.