aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_ssr/src/resolving.rs
Commit message (Collapse)AuthorAgeFilesLines
* SSR: Fix for path resolution of localsDavid Lattimore2020-07-261-0/+28
| | | | | | | | It seems that Semantics::scope, if given a statement node, won't resolve locals that were defined in the current scope, only in parent scopes. Not sure if this is intended / expected behavior, but we work around it for now by finding another nearby node to use as the scope (e.g. the expression inside the EXPR_STMT).
* SSR: Move more resolution-related code into the resolving moduleDavid Lattimore2020-07-261-6/+33
|
* SSR: Allow function calls to match method callsDavid Lattimore2020-07-241-0/+18
| | | | | | | | | | | 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: Use Definition::find_usages to speed up matching.David Lattimore2020-07-241-3/+5
| | | | When the search pattern contains a path, this substantially speeds up finding matches, especially if the path references a private item.
* SSR: Match paths based on what they resolve toDavid Lattimore2020-07-241-0/+153
Also render template paths appropriately for their context.