rust-analyzer Language Server
rust-analyzer.github.io
2
Leaving SiteNav
External Link Disclaimer
You are about to visit rust-analyzer.github.io. This website is not operated by us. We are not responsible for its content or privacy practices.
About this website
rust-analyzer is an implementation of the Language Server Protocol (LSP) for the Rust programming language, providing IDE-like features including code completion, diagnostics, navigation, refactoring, and formatting. Originally created by Aleksey Kladov (matklad) in 2018 as a from-scratch rewrite of the RLS (Rust Language Server), rust-analyzer is now officially maintained by the Rust project. Key features: incremental parsing and type inference engine built specifically for Rust, providing fast and accurate analysis even for large codebases without invoking the compiler. Code completion (IntelliSense) with context-aware suggestions including method completions, snippet completions, macro completions, and postfix completions for rapid code generation. Go-to-definition, find references, and workspace symbol search for navigation across crates, modules, and dependencies. Inline type hints and parameter name hints for reducing cognitive load when reading Rust code. Diagnostics for type errors, borrow checker violations, and clippy lints with quick-fix suggestions. Code actions and refactorings including extract function, inline variable, convert if-let to match, add missing match arms, and generate implementations. Macro expansion for viewing and navigating through declarative (macro_rules) and procedural macros. Hover information showing type signatures, documentation, and source for any symbol. Inlay hints for types, lifetimes, and closure captures. Debugging support via DAP (Debug Adapter Protocol). Formatting via rustfmt integration. Cargo integration for running build tasks and tests. Workspace-wide analysis for understanding dependencies between crates. Performance-optimized with incremental analysis that only re-analyzes changed files. Integrates with VS Code, Neovim, Emacs, Vim, Helix, Sublime Text, and any LSP-compatible editor.
Statistics
2
Views
0
Clicks
0
Like
0
Dislike