No description
Find a file
bors[bot] 8a57afe5a4
Merge #5684
5684: Semantic highlighting for unsafe union field access r=jonas-schievink a=Nashenas88

This change adds support for unions in inference and lowering, then extends on that to add the unsafe semantic modifier on field access only. The `is_possibly_unsafe` function in `syntax_highlighting.rs` could be extended to support fns and static muts so that their definitions are not highlighted as unsafe, but only their usage.

Also, each commit of this PR updates the tests. By reviewing the files by commit, it's easy to see how the changes in the code affected the tests.

Co-authored-by: Paul Daniel Faria <Nashenas88@users.noreply.github.com>
2020-08-08 16:45:37 +00:00
.cargo Alternative quite tests alias 2019-11-20 22:22:32 +03:00
.github Remove the premissions-misconifguration bug workarounds on CI 2020-07-29 23:58:47 +03:00
.vscode vscode client side tests 2020-05-20 22:31:39 +03:00
crates Merge #5684 2020-08-08 16:45:37 +00:00
docs Update docs/dev/README.md 2020-08-05 14:01:51 +02:00
editors/code Fix typo in settings description 2020-08-08 11:57:54 +02:00
xtask Update grammar 2020-08-01 13:47:19 +02:00
.gitattributes Update .gitattributes 2020-07-20 12:45:05 +02:00
.gitignore Remove html from gitignore so highlight snapshots are not ignored 2020-06-27 12:02:49 -04:00
bors.toml Fix bors config? 2020-05-24 16:07:46 +02:00
Cargo.lock Update chalk 2020-08-05 22:24:23 -04:00
Cargo.toml Gzip artifacts 2020-07-07 23:30:11 +03:00
LICENSE-APACHE Licenses 2018-01-10 22:47:04 +03:00
LICENSE-MIT Licenses 2018-01-10 22:47:04 +03:00
README.md Link metrics 2020-07-25 00:18:21 +02:00
rustfmt.toml Remove forcing \n via rustfmt 2019-11-02 22:19:59 +03:00

rust-analyzer logo

rust-analyzer is an experimental modular compiler frontend for the Rust language. It is a part of a larger rls-2.0 effort to create excellent IDE support for Rust.

Work on rust-analyzer is sponsored by

Ferrous Systems

Quick Start

https://rust-analyzer.github.io/manual.html#installation

Documentation

If you want to contribute to rust-analyzer or are just curious about how things work under the hood, check the ./docs/dev folder.

If you want to use rust-analyzer's language server with your editor of choice, check the manual folder. It also contains some tips & tricks to help you be more productive when using rust-analyzer.

Communication

For usage and troubleshooting requests, please use "IDEs and Editors" category of the Rust forum:

https://users.rust-lang.org/c/ide/14

For questions about development and implementation, join rls-2.0 working group on Zulip:

https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frls-2.2E0

License

Rust analyzer is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.