aboutsummaryrefslogtreecommitdiff
path: root/crates/hir_ty/src/diagnostics/decl_check.rs
Commit message (Collapse)AuthorAgeFilesLines
* internal: move diagnostics to hirAleksey Kladov2021-05-251-4/+2
| | | | | | | | | | | | | | | | | | | | | | | 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.
* decl_check: follow test style guideJonas Schievink2021-04-131-60/+59
|
* address review feedbackJade2021-04-131-21/+35
|
* decl_check: consider outer scopes' allowsJade2021-04-081-10/+122
| | | | | | | | | Fix #8417. Also makes it less noisy about no_mangle annotated stuff the user can do nothing about. Note: this still is broken with bitfield! macros. A repro in an ignore test is included here. I believe this bug is elsewhere, and I don't think I can work around it here.
* Access a body's block def maps via a methodJonas Schievink2021-04-041-2/+1
|
* Use bitflags to compress function propertiesJonas Schievink2021-04-031-1/+1
| | | | Very minor savings, only 1 MB or so
* Fix infinite recursion when computing diagnostics for inner itemsJonas Schievink2021-03-181-1/+14
|
* avoid converting types into themselves via .into() (clippy::useless-conversion)Matthias Krüger2021-03-171-9/+9
| | | | example: let x: String = String::from("hello world").into();
* Introduce FunctionQualifier for hir::FunctionDataoxalica2021-03-151-1/+1
|
* Use `body.block_scopes` to validate inner itemsJonas Schievink2021-03-091-3/+8
|
* Use upstream cov-markLaurențiu Nicola2021-03-081-7/+4
|
* Cleanup decl_checkLukas Wirth2021-02-051-160/+119
|
* decl_check: don't pass `db` around so oftenJonas Schievink2020-12-171-54/+49
|
* Use mark/hitJonas Schievink2020-12-101-0/+7
|
* Ignore extern items in incorrect-case checkJonas Schievink2020-12-101-0/+19
|
* Improve decl_check module readabilityIgor Aleksanov2020-11-031-6/+6
|
* Remove numbers from comments in decl_check.rsIgor Aleksanov2020-11-031-15/+15
|
* Check for allow(..) attributes for case diagnosticIgor Aleksanov2020-11-031-25/+91
|
* Properly identify camel cased acronyms as UpperCamelCaseArif Roktim2020-10-211-2/+26
|
* Keep SyntaxNodePtr::range privateIgor Aleksanov2020-10-121-2/+11
|
* Replace 'if let' with 'match' in decl_check.rsIgor Aleksanov2020-10-121-30/+33
|
* Add to_upper_snake_case function to stdxIgor Aleksanov2020-10-121-2/+2
|
* Fix code style issuesIgor Aleksanov2020-10-121-2/+6
|
* Fix issues with match arm bindingsIgor Aleksanov2020-10-121-7/+12
|
* Code style adjustmentsIgor Aleksanov2020-10-121-2/+50
|
* Make incorrect case diagnostic work inside of functionsIgor Aleksanov2020-10-121-32/+245
|
* Add diagnostics for enum names and variantsIgor Aleksanov2020-10-121-1/+146
|
* Check structure fields to be snake_caseIgor Aleksanov2020-10-121-46/+65
|
* Add check for structure names to be CamelCaseIgor Aleksanov2020-10-121-0/+138
|
* Extract helper functions into a separate moduleIgor Aleksanov2020-10-121-29/+20
|
* Add checks for function parametersIgor Aleksanov2020-10-121-6/+91
|
* Create basic support for names case checks and implement function name case ↵Igor Aleksanov2020-10-121-0/+173
check