aboutsummaryrefslogtreecommitdiff
path: root/crates/ide/src/diagnostics.rs
Commit message (Collapse)AuthorAgeFilesLines
* internal: remove DiagnosticWithFix infraAleksey Kladov2021-06-131-492/+22
|
* internal: refactor incorrect case diagnosticsAleksey Kladov2021-06-131-14/+2
|
* minorAleksey Kladov2021-06-131-38/+0
|
* internal: refactor find_map diagnosticAleksey Kladov2021-06-131-86/+2
|
* minorAleksey Kladov2021-06-131-43/+0
|
* internal: refactor missing or or some diagnosticAleksey Kladov2021-06-131-3/+2
|
* internal: refactor remove this semicolon diagnosticsAleksey Kladov2021-06-131-14/+3
|
* internal: refactor mismatched args count diagnosticAleksey Kladov2021-06-131-250/+2
|
* internal: refactor missing unsafe diagnosticAleksey Kladov2021-06-131-84/+2
|
* internal: refactor BreakOutsideOfLoop diagnosticAleksey Kladov2021-06-131-10/+2
|
* internal: refactor NoSuchField diagnosticAleksey Kladov2021-06-131-135/+11
|
* internal: refactor unimplemented builtin macro diagnosticAleksey Kladov2021-06-131-5/+2
|
* minor: simplifyAleksey Kladov2021-06-131-18/+3
|
* internal: check diagnostics in all files and not just the first oneAleksey Kladov2021-06-131-16/+15
|
* internal: refactor macro errorAleksey Kladov2021-06-131-0/+2
|
* internal: refactor unresolved proc macro diagnosticAleksey Kladov2021-06-131-10/+7
|
* internal: refactor inactive code diagnosticsAleksey Kladov2021-06-131-17/+13
|
* internal: refactor unresolved macro call diagnosticAleksey Kladov2021-06-131-26/+3
|
* internal: refactor unresolved import diagnosticAleksey Kladov2021-06-131-29/+30
|
* internal: refactor unresolved extern crate diagnosticAleksey Kladov2021-06-131-0/+3
|
* internal: unified missing fields diagnosticAleksey Kladov2021-06-131-14/+0
|
* internal: move missing_fields diagnosticsAleksey Kladov2021-06-131-4/+3
|
* internal: start new diagnostics APIAleksey Kladov2021-06-131-6/+35
| | | | | | | | | | | | | | | | | | 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.
* minor: put a mark backAleksey Kladov2021-06-131-0/+1
|
* clippy::redudant_borrowMaan20032021-06-131-3/+3
|
* internal: cross-crate cov-marksAleksey Kladov2021-06-121-0/+2
|
* internal: move diagnostics infra to hirAleksey Kladov2021-06-121-0/+354
|
* Move some hir_ty diagnostics to hirAleksey Kladov2021-06-121-1/+1303
|
* internal: move missing unsafe diagnostic to hirAleksey Kladov2021-06-121-0/+84
|
* internal: move inference diagnostics to hirAleksey Kladov2021-06-121-1/+140
|
* Diagnose unimplemented built-in macrosJonas Schievink2021-05-301-0/+5
|
* Stop expanding UseTrees during ItemTree loweringJonas Schievink2021-05-261-0/+2
|
* internal: move diagnostics to hirAleksey Kladov2021-05-251-20/+45
| | | | | | | | | | | | | | | | | | | | | | | The idea here is to eventually get rid of `dyn Diagnostic` and `DiagnosticSink` infrastructure altogether, and just have a `enum hir::Diagnostic` instead. The problem with `dyn Diagnostic` is that it is defined in the lowest level of the stack (hir_expand), but is used by the highest level (ide). As a first step, we free hir_expand and hir_def from `dyn Diagnostic` and kick the can up to `hir_ty`, as an intermediate state. The plan is then to move DiagnosticSink similarly to the hir crate, and, as final third step, remove its usage from the ide. One currently unsolved problem is testing. You can notice that the test which checks precise diagnostic ranges, unresolved_import_in_use_tree, was moved to the ide layer. Logically, only IDE should have the infra to render a specific range. At the same time, the range is determined with the data produced in hir_def and hir crates, so this layering is rather unfortunate. Working on hir_def shouldn't require compiling `ide` for testing.
* Add pub mod option for UnlinkedFilerainy-me2021-05-181-21/+42
|
* internal: scalable module structure for fixitsAleksey Kladov2021-05-171-530/+1
|
* internal: use mutable syntax trees when filling fieldsAleksey Kladov2021-05-161-3/+3
|
* fix: use raw idents in `make::name{_ref}` with keywordsJonas Schievink2021-05-071-0/+20
|
* Resolve single assist onlyKirill Bulatov2021-05-031-3/+3
|
* Add a way to resolve certain assistsKirill Bulatov2021-05-031-12/+31
|
* Include path in `unresolved-macro-call` diagnosticJonas Schievink2021-04-161-1/+1
|
* feat: improve performance by delaying computation of fixes for diagnosticsAleksey Kladov2021-04-131-21/+39
|
* internal: prepare for lazy diagnosticsAleksey Kladov2021-04-121-39/+44
|
* Shrink `unlinked-file` diagnostic to 3 charactersJonas Schievink2021-04-091-7/+9
|
* Don't mark unlinked file diagnostic as unusedJonas Schievink2021-03-281-1/+0
|
* Redo it properly and add a quickfixJonas Schievink2021-03-151-7/+154
|
* Diagnose files that aren't in the module treeJonas Schievink2021-03-101-3/+13
|
* For unresolved macros, hightlight only the last segmentAleksey Kladov2021-02-281-11/+56
|
* Add diagnostic for filter_map followed by nextPhil Ellison2021-01-231-0/+3
|
* Handle self/super/crate in PathSegment as NameRefLukas Wirth2021-01-151-2/+2
|
* Phase out SourceFileEdits in favour of a plain HashMapLukas Wirth2021-01-141-7/+5
|