IntelliJ Rust Changelog #1
New features
- GoTo symbol (Ctrl+Alt+Shift+N) works for methods.
- Completion works for prelude symbols.
- More formatter options with new code samples in settings (contributed by @mkaput).
- It is possible to run all tests inside a single module.
- Functions and statics inside
extern "C" { ... }blocks are properly resolved.
Fixes
- Proper lexing of
&&as one or two tokens - A ton of fixes for funny bugs in resolve and types:
- proper scoping for “downwards” resolve: generic parameters are not resolved outside the item,
RustPathElementis not aNamedElement,RustRegPatis really a RustRefPat (reference pattern) and it is actually extends Pattern,
-
Couple of NPEs and
IllegalStateExpcetionsduring type inference, - A bunch of tests for type resolving and expression typing.
Refactorings
-
Refreshing RRE: new scopes API, old Resolver class is killed, enumerateScopesFor is moved inside RRE.
-
RustItemElementis now an interface.RustFnElementis now a supertype for a bunch of function-like PSI nodes - Stubs improvements:
- methods now have stubs
isPublicis stored in stubs
getIconstill depends on some AST information, so goto symbol unfortunately parses the world at the moment.