aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_def
Commit message (Collapse)AuthorAgeFilesLines
...
* Add `_query` suffix to `compute_crate_def_map` for consistencyMichal Terepeta2020-01-032-2/+2
| | | | Signed-off-by: Michal Terepeta <[email protected]>
* Split `crate_def_map` into two methodsMichal Terepeta2020-01-032-3/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change: - introduces `compute_crate_def_map` query and renames `CrateDefMap::crate_def_map_query` for consistency, - annotates `crate_def_map` as `salsa::transparent` and adds a top-level `crate_def_map` wrapper function around that starts the profiler and immediately calls into `compute_crate_def_map` query. This allows us to better understand where we spent the time, in particular, how much is spent in the recomputaiton and how much in salsa. Example output (where we don't actually re-compute anything, but the query still takes a non-trivial amount of time): ``` 211ms - handle_inlay_hints 150ms - get_inlay_hints 150ms - SourceAnalyzer::new 65ms - def_with_body_from_child_node 65ms - analyze_container 65ms - analyze_container 65ms - Module::from_definition 65ms - Module::from_file 65ms - crate_def_map 1ms - parse_macro_query (6 calls) 0ms - raw_items_query (1 calls) 64ms - ??? ``` Signed-off-by: Michal Terepeta <[email protected]>
* Remove a duplicate line in `collect_defs`Michal Terepeta2020-01-031-1/+0
| | | | Signed-off-by: Michal Terepeta <[email protected]>
* Remove unused hard-coded pathsEmil Lauridsen2019-12-291-4/+0
|
* Add helpers for unpacking lang itemsEmil Lauridsen2019-12-291-0/+44
|
* Merge #2650bors[bot]2019-12-292-7/+19
|\ | | | | | | | | | | | | | | 2650: Add macro call support for SourceAnalyzer::type_of r=matklad a=edwin0cheng Co-authored-by: Edwin Cheng <[email protected]>
| * Use pre-stored macro fileEdwin Cheng2019-12-233-14/+30
| |
| * Add macro call support for type_ofEdwin Cheng2019-12-232-11/+7
| |
* | Don't add non-impl/trait containers to scopeAleksey Kladov2019-12-291-1/+1
| |
* | visible_from -> is_visible_fromFlorian Diebold2019-12-272-7/+7
| |
* | Remove Arc from RawVisibilityFlorian Diebold2019-12-261-11/+6
| | | | | | | | | | Now that it's not used as a direct query return value anymore, it doesn't need to be cheaply cloneable anymore.
* | Fix cross-crate glob privacy handlingFlorian Diebold2019-12-263-6/+28
| |
* | Remove visibility query, instead add struct field visibility to dataFlorian Diebold2019-12-264-100/+33
| | | | | | | | | | Methods should be handled the same, and for items the visibility will be in the def map.
* | Rename ResolvedVisibility -> VisibilityFlorian Diebold2019-12-267-64/+51
| |
* | Rename Visibility -> RawVisibilityFlorian Diebold2019-12-266-40/+40
| |
* | Handle privacy for modulesFlorian Diebold2019-12-263-11/+36
| |
* | Take visibility into account for glob importsFlorian Diebold2019-12-267-43/+165
| |
* | Keep track of visibility during def collectionFlorian Diebold2019-12-266-54/+120
| |
* | Collect visibility of items during nameresFlorian Diebold2019-12-264-16/+57
| |
* | Add doc commentFlorian Diebold2019-12-261-0/+2
| |
* | Make enum variant fields publicFlorian Diebold2019-12-261-2/+9
| |
* | Add logic for resolving and checking visibilityFlorian Diebold2019-12-262-1/+60
| |
* | Add infrastructure for visibility on syntax and hir_def levelFlorian Diebold2019-12-263-1/+131
| |
* | Remove AsyncOwnerEdwin Cheng2019-12-241-3/+1
| |
* | FormattingEdwin Cheng2019-12-242-3/+4
| |
* | Implement infer await from async funcEdwin Cheng2019-12-242-2/+30
|/
* Rudimentary name resolution for local itemsAleksey Kladov2019-12-224-43/+102
|
* SimplifyAleksey Kladov2019-12-222-16/+17
|
* RefactorAleksey Kladov2019-12-222-10/+11
|
* Share impl Scope between modules and blocksAleksey Kladov2019-12-223-53/+56
|
* SimplifyAleksey Kladov2019-12-226-57/+40
|
* Remove unused parametersAleksey Kladov2019-12-222-23/+13
|
* Remove import fieldAleksey Kladov2019-12-222-19/+8
|
* Separate defs from importsAleksey Kladov2019-12-222-5/+8
|
* Refactor PerNs constructionAleksey Kladov2019-12-222-49/+52
|
* Minor renameAleksey Kladov2019-12-221-8/+8
|
* More profilingAleksey Kladov2019-12-212-0/+4
|
* Merge #2637bors[bot]2019-12-211-0/+2
|\ | | | | | | | | | | | | | | 2637: Optimize and profile r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Optimize and profileAleksey Kladov2019-12-211-0/+2
| |
* | Move LocalImportIdAleksey Kladov2019-12-214-28/+20
| |
* | Remove import source mapAleksey Kladov2019-12-213-62/+13
| |
* | Remove import from resolutionAleksey Kladov2019-12-212-17/+12
|/
* Remove imports from hirAleksey Kladov2019-12-213-8/+2
|
* Revert "Merge #2629"Aleksey Kladov2019-12-216-46/+126
| | | | | This reverts commit cdc9d682b066b110e0a44e5f8f1c574b38c16ba9, reversing changes made to 90ef070db3dce0a7acb9cd11d0b0d72de13c9d79.
* Privatize LocalImportIDAleksey Kladov2019-12-213-11/+8
|
* Remove import source mapAleksey Kladov2019-12-213-68/+13
|
* Don't track importsAleksey Kladov2019-12-212-48/+26
|
* Merge #2626bors[bot]2019-12-211-10/+36
|\ | | | | | | | | | | | | | | 2626: Recursive collect macros in impl items r=matklad a=edwin0cheng Co-authored-by: Edwin Cheng <[email protected]>
| * Add a limit for protect against infinite recursionEdwin Cheng2019-12-201-2/+10
| |
| * Recursive collect macros in impl itemsEdwin Cheng2019-12-201-10/+28
| |