aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/nameres.rs
Commit message (Collapse)AuthorAgeFilesLines
* Merge #1068bors[bot]2019-04-031-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | 1068: profiling crate first draft r=matklad a=pasa I've made this first draft for #961 Could you look at it? Is this something what you are looking for? It has lack of tests. I can't figure out how to test stderr output in rust right now. Do you have some clues? Additionally I'm thinking about to implement procedural macros to annotate methods with this profiler. Will it be helpful? Co-authored-by: Sergey Parilin <[email protected]>
| * Merge remote-tracking branch 'upstream/master' into issue961_profilingSergey Parilin2019-04-021-48/+67
| |\
| * | PR issuse resolvedSergey Parilin2019-04-021-2/+2
| | |
* | | always produce source for importAleksey Kladov2019-04-021-2/+5
| |/ |/|
* | add typed idsAleksey Kladov2019-03-261-10/+10
| |
* | remove some dead codeAleksey Kladov2019-03-261-17/+1
| |
* | simplifyAleksey Kladov2019-03-261-4/+2
| |
* | move source_id to a separate fileAleksey Kladov2019-03-261-1/+2
| |
* | store macro def inside macro idAleksey Kladov2019-03-261-9/+2
| | | | | | | | | | | | | | | | This solves the problem of "macro expansion can't call into name resolution, because name resolution calls back into macro expansion" Because we store macro def as a part of call id, macro expansion just knows the def!
* | Basics for trait method resolutionFlorian Diebold2019-03-251-1/+7
| |
* | fixesAleksey Kladov2019-03-251-1/+1
| |
* | check impls as wellAleksey Kladov2019-03-251-1/+1
| |
* | cleanupAleksey Kladov2019-03-251-25/+41
| |
* | switch modules to new diagnosticsAleksey Kladov2019-03-251-22/+43
|/
* rename persistent hir database -> def databaseAleksey Kladov2019-03-231-9/+6
|
* replace todo with fixmeAleksey Kladov2019-03-231-1/+1
|
* docsAleksey Kladov2019-03-171-9/+15
|
* remove old macro supportAleksey Kladov2019-03-171-3/+26
|
* rename ModuleId -> CrateModuleIdAleksey Kladov2019-03-171-15/+15
|
* log timeAleksey Kladov2019-03-171-0/+2
|
* Reorganize name resolutionAleksey Kladov2019-03-171-100/+362
|
* remove ItemMapAleksey Kladov2019-03-171-535/+4
|
* move tests over to crate-def-mapAleksey Kladov2019-03-171-4/+1
|
* Replace module_tree with CrateDefMapAleksey Kladov2019-03-171-11/+12
|
* add skeleton for macro-aware name resolutionsAleksey Kladov2019-03-171-0/+1
|
* align lower module query namesAleksey Kladov2019-03-021-1/+1
|
* Fix resolution of associated method calls across cratesFlorian Diebold2019-02-231-1/+5
| | | | | | I think it'll be better to make the path resolution the number of unresolved segments, not the first unresolved index; then this error could simply not have happened. But I'll do that separately.
* Make nameres::ResolvePathResult private and refactorVille Penttinen2019-02-211-7/+7
|
* Remove Const inference for now, refactor PathResultVille Penttinen2019-02-211-15/+8
|
* Implement basic support for Associated Methods and ConstantsVille Penttinen2019-02-211-16/+62
| | | | | | | This is done in `infer_path_expr`. When `Resolver::resolve_path` returns `PartiallyResolved`, we use the returned `Resolution` together with the given `segment_index` to check if we can find something matching the segment at segment_index in the impls for that particular type.
* Handle tuple structs / enum variants properly in type inferenceFlorian Diebold2019-02-171-2/+2
|
* Complete names from preludeFlorian Diebold2019-02-131-1/+1
|
* Handle extern crates better, so they work correctly in 2015 editionFlorian Diebold2019-02-131-8/+17
| | | | (see the removed comment.)
* Resolve 2015 style importsFlorian Diebold2019-02-131-7/+61
|
* Import the preludeFlorian Diebold2019-02-131-4/+46
|
* Fix some typosPascal Hertleif2019-02-121-1/+1
|
* rename combine -> orAleksey Kladov2019-02-111-2/+2
| | | | | | This way we match API of Option https://doc.rust-lang.org/std/option/enum.Option.html#method.or
* use extern prelude in ResolverAleksey Kladov2019-02-111-13/+9
| | | | | | | This fixes two bugs: - completion for paths works again - we handle extern prelude shadowing more correctly
* Implement glob imports within the same crateFlorian Diebold2019-02-101-16/+77
| | | | Fixes #231.
* Import glob imports from other cratesFlorian Diebold2019-02-101-2/+15
| | | | This is the easy part since we don't have to consider the fixpoint algorithm.
* Implement glob imports from enumsFlorian Diebold2019-02-101-4/+35
|
* reformat the worldAleksey Kladov2019-02-081-74/+21
|
* Fix ReachedFixedPoint value for unresolved external prelude itemsFlorian Diebold2019-02-041-1/+1
|
* Complete extern prelude (again)Florian Diebold2019-02-041-1/+1
|
* Make extern crates in the root module add to the extern preludeFlorian Diebold2019-02-041-30/+60
| | | | To accomplish this, separate the extern prelude from the per-module item maps.
* Use aliases in import resolutionFlorian Diebold2019-02-011-9/+12
|
* CleanupFlorian Diebold2019-02-011-2/+1
|
* Use the new Resolver API in completionFlorian Diebold2019-02-011-0/+9
|
* Use new Resolver API in type inferenceFlorian Diebold2019-02-011-5/+18
|
* Sketching the resolver APIFlorian Diebold2019-02-011-1/+1
|