Go to file
David Lattimore 1fce8b6ba3 SSR: Change the way rules are stored internally.
Previously we had:

- Multiple rules
  - Each rule had its pattern parsed as an expression, path etc

This meant that there were two levels at which there could be multiple
rules.

Now we just have multiple rules. If a pattern can parse as more than one
kind of thing, then they get stored as multiple separate rules.

We also now don't have separate fields for the different kinds of things
that a pattern can parse as. This makes adding new kinds of things
simpler.

Previously, add_search_pattern would construct a rule with a dummy
replacement. Now the replacement is an Option. This is slightly cleaner
and also opens the way for parsing the replacement template as the same
kind of thing as the search pattern.
2020-07-24 21:34:00 +10:00
.cargo
.github Disable audit step 2020-07-16 10:15:13 +02:00
.vscode vscode client side tests 2020-05-20 22:31:39 +03:00
crates SSR: Change the way rules are stored internally. 2020-07-24 21:34:00 +10:00
docs Merge #5473 2020-07-23 13:58:45 +00:00
editors/code Merge #5480 2020-07-23 12:33:24 +00:00
xtask Replace superslice with API on path to stabilization 2020-07-23 12:59:18 +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 SSR: Use expect! in tests 2020-07-24 21:34:00 +10:00
Cargo.toml Gzip artifacts 2020-07-07 23:30:11 +03:00
LICENSE-APACHE
LICENSE-MIT
README.md Add Embark Studios to the sponsors list 2020-06-15 15:06:03 +02:00
rustfmt.toml

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. If you want to get involved, check the rls-2.0 working group:

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

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.