Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Move module to SourceBinder | Aleksey Kladov | 2020-01-16 | 2 | -34/+48 | |
| | ||||||
* | Cache source for generics | Aleksey Kladov | 2020-01-16 | 1 | -1/+20 | |
| | ||||||
* | Move more stuff to SourceBinder | Aleksey Kladov | 2020-01-16 | 2 | -64/+68 | |
| | ||||||
* | More natural trait setup | Aleksey Kladov | 2020-01-16 | 2 | -22/+44 | |
| | ||||||
* | Removed FromSource | Aleksey Kladov | 2020-01-16 | 1 | -165/+16 | |
| | ||||||
* | Make FromSource private | Aleksey Kladov | 2020-01-16 | 3 | -18/+53 | |
| | ||||||
* | Typos | Aleksey Kladov | 2020-01-15 | 1 | -1/+1 | |
| | ||||||
* | Make syntax highlighting linear | Aleksey Kladov | 2020-01-15 | 1 | -3/+5 | |
| | ||||||
* | Flip generics | Aleksey Kladov | 2020-01-15 | 1 | -12/+12 | |
| | ||||||
* | Store DB in SourceBinder | Aleksey Kladov | 2020-01-15 | 3 | -32/+33 | |
| | ||||||
* | Introduce SourceBinder | Aleksey Kladov | 2020-01-15 | 3 | -99/+215 | |
| | ||||||
* | Don't parse child modules when doing diagnostics | Aleksey Kladov | 2020-01-15 | 1 | -3/+3 | |
| | ||||||
* | Move Type API to type | Aleksey Kladov | 2020-01-14 | 2 | -66/+78 | |
| | ||||||
* | Push resolver further up | Aleksey Kladov | 2020-01-14 | 1 | -2/+16 | |
| | ||||||
* | Move impls_future to Type, where it belongs | Aleksey Kladov | 2020-01-14 | 2 | -25/+19 | |
| | ||||||
* | Use lang-items to resolve future trait | Aleksey Kladov | 2020-01-14 | 1 | -10/+9 | |
| | ||||||
* | Move utility functions down | Aleksey Kladov | 2020-01-14 | 1 | -58/+58 | |
| | ||||||
* | Rename file | Aleksey Kladov | 2020-01-14 | 2 | -2/+2 | |
| | ||||||
* | Use attr location for builtin macro goto-imp | Edwin Cheng | 2020-01-12 | 1 | -1/+23 | |
| | ||||||
* | Apply review suggestions | Florian Diebold | 2020-01-11 | 2 | -2/+4 | |
| | ||||||
* | Qualify some paths in 'add missing impl members' | Florian Diebold | 2020-01-11 | 3 | -0/+33 | |
| | ||||||
* | Split `infer` query into two for better profiling | Michal Terepeta | 2020-01-03 | 1 | -4/+4 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the same change as we did with `crate_def_map` and it does seem that we mostly spend time in salsa, without recomputing much on rust-analyzer side. Example output: ``` 233ms - handle_inlay_hints 163ms - get_inlay_hints 163ms - SourceAnalyzer::new 67ms - def_with_body_from_child_node 67ms - analyze_container 67ms - analyze_container 67ms - Module::from_definition 67ms - Module::from_file 67ms - crate_def_map 0ms - parse_macro_query (6 calls) 0ms - raw_items_query (1 calls) 66ms - ??? 0ms - crate_def_map (1 calls) 0ms - crate_def_map (1 calls) 96ms - infer 2ms - trait_solve_query (2 calls) 94ms - ??? 0ms - body_with_source_map_query (1 calls) 0ms - crate_def_map (1 calls) [...] ``` Signed-off-by: Michal Terepeta <[email protected]> | |||||
* | Split `crate_def_map` into two methods | Michal Terepeta | 2020-01-03 | 1 | -5/+5 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]> | |||||
* | Add `profile` calls to {Module,Function}::diagnostics | Michal Terepeta | 2020-01-03 | 1 | -0/+3 | |
| | | | | | | | | | | | | | | | | | | | | | | | | With this change the output `ra_prof` gives a better indication where the time is spent. Example output: ``` 213ms - publish_diagnostics 213ms - diagnostics 70ms - Module::from_definition 70ms - Module::from_file 132ms - Module::diagnostics 78ms - Function::diagnostics 0ms - body_with_source_map_query (1 calls) 2ms - trait_solve_query (1 calls) 76ms - ??? 15ms - Function::diagnostics 0ms - body_with_source_map_query (1 calls) 15ms - trait_solve_query (5 calls) 38ms - Function::diagnostics (51 calls) 8ms - parse_query (1 calls) ``` Signed-off-by: Michal Terepeta <[email protected]> | |||||
* | Merge #2650 | bors[bot] | 2019-12-29 | 1 | -1/+25 | |
|\ | | | | | | | | | | | | | | | 2650: Add macro call support for SourceAnalyzer::type_of r=matklad a=edwin0cheng Co-authored-by: Edwin Cheng <[email protected]> | |||||
| * | Use pre-stored macro file | Edwin Cheng | 2019-12-23 | 1 | -19/+21 | |
| | | ||||||
| * | Add macro call support for type_of | Edwin Cheng | 2019-12-23 | 1 | -2/+24 | |
| | | ||||||
* | | visible_from -> is_visible_from | Florian Diebold | 2019-12-27 | 1 | -2/+2 | |
| | | ||||||
* | | Remove visibility query, instead add struct field visibility to data | Florian Diebold | 2019-12-26 | 1 | -2/+2 | |
| | | | | | | | | | | Methods should be handled the same, and for items the visibility will be in the def map. | |||||
* | | Rename ResolvedVisibility -> Visibility | Florian Diebold | 2019-12-26 | 1 | -3/+3 | |
| | | ||||||
* | | Add visibility in code model for fields | Florian Diebold | 2019-12-26 | 2 | -3/+20 | |
| | | ||||||
* | | Fill in type params in 'add missing impl members' assist | Florian Diebold | 2019-12-24 | 1 | -0/+11 | |
|/ | ||||||
* | Simplify | Aleksey Kladov | 2019-12-22 | 1 | -1/+1 | |
| | ||||||
* | More profiling | Aleksey Kladov | 2019-12-21 | 1 | -2/+7 | |
| | ||||||
* | Merge #2637 | bors[bot] | 2019-12-21 | 2 | -0/+7 | |
|\ | | | | | | | | | | | | | | | 2637: Optimize and profile r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | Optimize and profile | Aleksey Kladov | 2019-12-21 | 2 | -0/+7 | |
| | | ||||||
* | | Remove import source map | Aleksey Kladov | 2019-12-21 | 1 | -2/+2 | |
|/ | ||||||
* | Remove imports from hir | Aleksey Kladov | 2019-12-21 | 3 | -27/+8 | |
| | ||||||
* | Revert "Merge #2629" | Aleksey Kladov | 2019-12-21 | 4 | -14/+28 | |
| | | | | | This reverts commit cdc9d682b066b110e0a44e5f8f1c574b38c16ba9, reversing changes made to 90ef070db3dce0a7acb9cd11d0b0d72de13c9d79. | |||||
* | Remove import source map | Aleksey Kladov | 2019-12-21 | 1 | -2/+2 | |
| | ||||||
* | Remove hir for imports | Aleksey Kladov | 2019-12-21 | 3 | -26/+12 | |
| | ||||||
* | Move impls to ItemScope | Aleksey Kladov | 2019-12-20 | 1 | -1/+1 | |
| | ||||||
* | Fix resolve for field init shorthand | Aleksey Kladov | 2019-12-20 | 2 | -8/+16 | |
| | ||||||
* | Use generic ItemLoc for impls | Aleksey Kladov | 2019-12-20 | 1 | -2/+2 | |
| | ||||||
* | Support for nested traits | Aleksey Kladov | 2019-12-20 | 1 | -1/+1 | |
| | ||||||
* | Support for nested ADT | Aleksey Kladov | 2019-12-20 | 1 | -6/+6 | |
| | ||||||
* | Rebuild ra_lsp_server and nest helper function. | Aleksey Kladov | 2019-12-20 | 1 | -37/+37 | |
| | | | | Completion now works again, so there's no need not to nest | |||||
* | Handle nested declrations in from_source | Aleksey Kladov | 2019-12-20 | 1 | -7/+16 | |
| | ||||||
* | Add local functions to bodies | Aleksey Kladov | 2019-12-20 | 1 | -3/+8 | |
| | ||||||
* | Drop dead code | Aleksey Kladov | 2019-12-19 | 2 | -60/+4 | |
| |