aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_ide/src/ssr.rs
Commit message (Collapse)AuthorAgeFilesLines
* Rename ra_db -> base_dbAleksey Kladov2020-08-131-1/+1
|
* SSR: Matching trait associated constants, types and functionsDavid Lattimore2020-08-011-2/+2
| | | | | | | | | | This fixes matching of things like `HashMap::default()` by resolving `HashMap` instead of `default` (which resolves to `Default::default`). Same for associated constants and types that are part of a trait implementation. However, we still don't support matching calls to trait methods.
* SSR: Rename position and lookup_context to resolve_contextDavid Lattimore2020-07-291-2/+2
|
* SSR: Restrict to current selection if anyDavid Lattimore2020-07-291-2/+6
| | | | | The selection is also used to avoid unnecessary work, but only to the file level. Further restricting unnecessary work is left for later.
* SSR: Allow function calls to match method callsDavid Lattimore2020-07-241-0/+3
| | | | | | | | | | | This differs from how this used to work before I removed it in that: a) It's only one direction. Function calls in the pattern can match method calls in the code, but not the other way around. b) We now check that the function call in the pattern resolves to the same function as the method call in the code. The lack of (b) was the reason I felt the need to remove the feature before.
* SSR: Match paths based on what they resolve toDavid Lattimore2020-07-241-1/+11
| | | | Also render template paths appropriately for their context.
* SSR: Pass current file position through to SSR code.David Lattimore2020-07-241-2/+4
| | | | In a subsequent commit, it will be used for resolving paths.
* Move iteration over all files into the SSR crateDavid Lattimore2020-07-241-13/+3
| | | | The methods `edits_for_file` and `find_matches_in_file` are replaced with just `edits` and `matches`. This simplifies the API a bit, but more importantly it makes it possible in a subsequent commit for SSR to decide to not search all files.
* SSR: Add initial support for placeholder constraintsDavid Lattimore2020-07-011-0/+12
|
* Fix some typosDavid Lattimore2020-06-301-1/+1
|
* New VFSAleksey Kladov2020-06-231-1/+1
|
* SSR: Allow matching of whole macro callsDavid Lattimore2020-06-221-0/+1
| | | | Matching within macro calls is to come later and matching of macro calls within macro calls later still.
* Allow SSR to match type references, items, paths and patternsDavid Lattimore2020-06-221-554/+9
| | | | Part of #3186
* Remove :expr from placeholdersDavid Lattimore2020-06-171-54/+20
| | | | Reasoning discussed at #3186
* Doc more featuresAleksey Kladov2020-05-311-2/+22
|
* Fix some clippy perf warningsJeremy Kolb2020-05-251-4/+4
|
* Lift SourceChange to the ra_ide_dbAleksey Kladov2020-05-061-7/+7
|
* Fixup testsAleksey Kladov2020-05-051-2/+6
|
* Use more natural signature for Edit::applyAleksey Kladov2020-05-051-9/+15
|
* Adds to SSR match for semantically equivalent call and method callMikhail Modin2020-04-021-12/+110
|
* Adds sort for RecordLit comparison in SSRMikhail Modin2020-04-011-26/+90
|
* Swtches to rust SSR query checkMikhail Modin2020-03-151-8/+28
|
* get matches from code.descendantsadamrk2020-02-251-7/+9
|
* save comments as ra_syntax::ast::Commentadamrk2020-02-251-10/+6
|
* Handle trivia in strucural search and replaceadamrk2020-02-231-27/+118
|
* More manual clippy fixesKirill Bulatov2020-02-181-5/+9
|
* Init implementation of structural search replaceMikhail Modin2020-02-141-0/+324