aboutsummaryrefslogtreecommitdiff
path: root/crates/hir
Commit message (Collapse)AuthorAgeFilesLines
* internal: remove one more accidentally quadratic code-pathAleksey Kladov2021-06-221-20/+10
| | | | | | | | | | | | | | Definition::visibility was implemented in a rather roundabout way -- by asking the parent module about the effective visibility. This is problematic for a couple of reasons: * first, it doesn't work for local items * second, asking module about visibility of a child is a linear operation (that's a problem in itself, tracked in #9378) Instead, lets ask the declared visibility directly, we have all the code for it, and need only to actually us it.
* intenral: dont export impl detailsAleksey Kladov2021-06-222-7/+5
|
* minor: extend source_to_def docsAleksey Kladov2021-06-221-2/+18
|
* internal: document source_to_def and it's connection to Kotlin&RoslynAleksey Kladov2021-06-221-0/+69
|
* Move features into potential_cfg_optionsJamie Cunliffe2021-06-211-2/+2
|
* Improve completion of cfg attributesJamie Cunliffe2021-06-211-0/+4
| | | | | | | | | | | | The completion of cfg will look at the enabled cfg keys when performing completion. It will also look crate features when completing a feature cfg option. A fixed list of known values for some cfg options are provided. For unknown keys it will look at the enabled values for that cfg key, which means that completion will only show enabled options for those.
* Apply some clippy suggestionsClemens Wasser2021-06-211-23/+19
|
* Nest all the or-patterns!Lukas Wirth2021-06-171-8/+9
|
* Filter out non-type completions in the respective completions modules insteadLukas Wirth2021-06-161-12/+0
|
* internal: more natural order of sources for TypeParamAleksey Kladov2021-06-141-1/+1
| | | | | We usually use first (left) variant of `Either` for "usual" case, and use right for odd things. For example, pat source is Pat | SelfParam.
* Merge #9260bors[bot]2021-06-141-1/+1
|\ | | | | | | | | | | | | | | 9260: tree-wide: make rustdoc links spiky so they are clickable r=matklad a=lf- Rustdoc was complaining about these while I was running with --document-private-items and I figure they should be fixed. Co-authored-by: Jade <[email protected]>
| * tree-wide: make rustdoc links spiky so they are clickableJade2021-06-141-1/+1
| |
* | internal: kill diagnostic sinkAleksey Kladov2021-06-133-135/+6
| |
* | internal: use cov-mark rather than bailing out diagnosticAleksey Kladov2021-06-132-45/+6
| |
* | internal: refactor missing match arms diagnosticsAleksey Kladov2021-06-132-23/+9
| |
* | internal: refactor incorrect case diagnosticsAleksey Kladov2021-06-132-36/+11
| |
* | internal: refactor find_map diagnosticAleksey Kladov2021-06-132-22/+8
| |
* | internal: refactor missing or or some diagnosticAleksey Kladov2021-06-132-34/+3
| |
* | internal: refactor remove this semicolon diagnosticsAleksey Kladov2021-06-132-24/+3
| |
* | internal: refactor mismatched args count diagnosticAleksey Kladov2021-06-132-30/+5
| |
* | internal: refactor missing unsafe diagnosticAleksey Kladov2021-06-132-23/+3
| |
* | internal: refactor BreakOutsideOfLoop diagnosticAleksey Kladov2021-06-132-22/+4
| |
* | internal: refactor NoSuchField diagnosticAleksey Kladov2021-06-132-24/+3
| |
* | internal: refactor unimplemented builtin macro diagnosticAleksey Kladov2021-06-132-26/+12
| |
* | internal: refactor macro errorAleksey Kladov2021-06-132-33/+13
| |
* | internal: refactor unresolved proc macro diagnosticAleksey Kladov2021-06-132-50/+17
| |
* | internal: refactor inactive code diagnosticsAleksey Kladov2021-06-132-41/+15
| |
* | internal: refactor unresolved macro call diagnosticAleksey Kladov2021-06-132-38/+19
| |
* | internal: refactor unresolved import diagnosticAleksey Kladov2021-06-132-26/+6
| |
* | internal: refactor unresolved extern crate diagnosticAleksey Kladov2021-06-132-25/+8
| |
* | internal: unified missing fields diagnosticAleksey Kladov2021-06-132-107/+62
| |
* | internal: move missing_fields diagnosticsAleksey Kladov2021-06-132-56/+20
| |
* | internal: start new diagnostics APIAleksey Kladov2021-06-132-34/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At the moment, this moves only a single diagnostic, but the idea is reafactor the rest to use the same pattern. We are going to have a single file per diagnostic. This file will define diagnostics code, rendering range and fixes, if any. It'll also have all of the tests. This is similar to how we deal with assists. After we refactor all diagnostics to follow this pattern, we'll probably move them to a new `ide_diagnostics` crate. Not that we intentionally want to test all diagnostics on this layer, despite the fact that they are generally emitted in the guts on the compiler. Diagnostics care to much about the end presentation details/fixes to be worth-while "unit" testing. So, we'll unit-test only the primary output of compilation process (types and name res tables), and will use integrated UI tests for diagnostics.
* | clippy::clone_on_copyMaan20032021-06-131-1/+1
| |
* | clippy::redudant_borrowMaan20032021-06-133-9/+9
| |
* | internal: move diagnostics infra to hirAleksey Kladov2021-06-123-17/+159
| |
* | Move some hir_ty diagnostics to hirAleksey Kladov2021-06-122-17/+421
| |
* | minor: optimizeAleksey Kladov2021-06-122-3/+5
| | | | | | | | | | We shouldn't be looking at the source map unless we actually have diagnostics.
* | internal: move missing unsafe diagnostic to hirAleksey Kladov2021-06-122-4/+40
| |
* | internal: move inference diagnostics to hirAleksey Kladov2021-06-122-4/+72
| |
* | Merge #9218bors[bot]2021-06-111-0/+14
|\ \ | | | | | | | | | | | | | | | | | | | | | 9218: Item search now respects trait impl items r=Veykril a=Veykril Fixes #2977 Co-authored-by: Lukas Wirth <[email protected]>
| * | Item search now respects trait impl itemsLukas Wirth2021-06-111-0/+14
| |/
* / Add more profiling for flyimportsKirill Bulatov2021-06-101-0/+4
|/
* Implement dummy expansions for builtin attributesLukas Wirth2021-06-091-0/+1
|
* Merge #9191bors[bot]2021-06-091-2/+10
|\ | | | | | | | | | | | | | | 9191: fix: Don't descend MacroCall TokenTree delimiters r=jonas-schievink a=Veykril Fixes #9190 Co-authored-by: Lukas Wirth <[email protected]>
| * Don't descend MacroCall TokenTree delimitersLukas Wirth2021-06-091-2/+10
| |
| |
| \
*-. \ Merge #9181 #9182bors[bot]2021-06-082-1/+21
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9181: Don't complete values in type position r=jonas-schievink a=Veykril Will add some proper tests in a bit 9182: fix: don't complete derive macros as fn-like macros r=jonas-schievink a=jonas-schievink Part of https://github.com/rust-analyzer/rust-analyzer/issues/8518 bors r+ Co-authored-by: Lukas Wirth <[email protected]> Co-authored-by: Jonas Schievink <[email protected]>
| | * | fix: don't complete derive macros as fn-like macrosJonas Schievink2021-06-081-0/+7
| | |/
| * / Don't complete values in type positionLukas Wirth2021-06-082-1/+14
| |/
* / source_to_def: skip items with no defJonas Schievink2021-06-081-50/+56
|/